[Prism54-devel] [Bug 91] New: mgt_set_request() causes system hang

bugzilla-daemon at mcgrof.com bugzilla-daemon at mcgrof.com
Thu Jun 24 19:05:41 UTC 2004


http://localhost/cgi-bin/bugzilla/show_bug.cgi?id=91

           Summary: mgt_set_request() causes system hang
           Product: prim54
           Version: 1.1
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: critical
          Priority: P2
         Component: Device Driver
        AssignedTo: prism54-devel at prism54.org
        ReportedBy: shershey at raytheon.com


I'm calling mgt_set_request() from a kernel timer initiated ISR. It appears 
that mgt_set_request() is calling down_write() which calls might_sleep() which 
causes an error & stack dump in the system log:
Debug: sleeping function called from invalid context at include/linux/rwsem.h: 
66"
in_atomic():1, irqs_disabled(): 0
Call Trace:
  __might_sleep+0x9f/0xb0
  recalc_task_prio+0x97/0x1c0
  mgt_set_request+0xa8/0x1a0 [prism54]

The entire system hanged after this error.

As a patch, I may test whether in_atomic() is 1 and skip calling down_write() 
and up_write() inside mgt_set_request(). However, since I really don't 
understand what the hell is going on, this may cause other undesirable side 
effects.

Thanks for taking a look at this!



------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.


More information about the Prism54-devel mailing list