Bug 212120 - fix AM335x PRU driver
Summary: fix AM335x PRU driver
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: arm (show other bugs)
Version: CURRENT
Hardware: arm Any
: --- Affects Some People
Assignee: Oleksandr Tymoshenko
URL:
Keywords: patch
Depends on:
Blocks:
 
Reported: 2016-08-24 19:22 UTC by embedded.xyz
Modified: 2016-09-02 22:16 UTC (History)
1 user (show)

See Also:
gonzo: mfc-stable11+


Attachments
patch for ti_pruss.c (1.06 KB, patch)
2016-08-24 19:22 UTC, embedded.xyz
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description embedded.xyz 2016-08-24 19:22:37 UTC
Created attachment 174024 [details]
patch for ti_pruss.c

The interrupt-notification is done via kqueue. The filter-function ti_pruss_kqfilter makes use of knlist_add(), which needs to be locked.

Panics the kernel with INVARIANTS enabled.

Patch attached.
Comment 1 commit-hook freebsd_committer freebsd_triage 2016-08-30 01:31:24 UTC
A commit references this bug:

Author: gonzo
Date: Tue Aug 30 01:31:03 UTC 2016
New revision: 305039
URL: https://svnweb.freebsd.org/changeset/base/305039

Log:
  Fix TI PRUSS driver panic with INVARIANTS enabled

  Value passed as islocked argument to knlist_add should
  be consistent with actual lock state so add lock/unlock
  calls around knlist_add

  PR:		212120
  Submitted by:	Manuel Stuhn

Changes:
  head/sys/arm/ti/ti_pruss.c
Comment 2 commit-hook freebsd_committer freebsd_triage 2016-09-02 22:04:56 UTC
A commit references this bug:

Author: gonzo
Date: Fri Sep  2 22:04:20 UTC 2016
New revision: 305308
URL: https://svnweb.freebsd.org/changeset/base/305308

Log:
  MFC r305039:

  Fix TI PRUSS driver panic with INVARIANTS enabled

  Value passed as islocked argument to knlist_add should
  be consistent with actual lock state so add lock/unlock
  calls around knlist_add

  PR:		212120
  Submitted by:	Manuel Stuhn

Changes:
_U  stable/11/
  stable/11/sys/arm/ti/ti_pruss.c