Bruce Evans wrote:
On Wed, 9 Nov 2005, Warner Losh wrote:

 Modified files:
   sys/kern             subr_power.c
 Log:
 Kick off the suspend sequence from the keyboard in a SWI rather than
 in the hardware interrupt context (even if it is likely just an
 ithread).  We don't document that suspend/resume routines are run from
 such a context and some of the things that happen in those routines
 aren't interrupt safe.  Since there's no real need to run from that
 context, this restores assumptions that suspend routines have made.

 This fixes Thierry Herbelot's 'Trying to sleep while sleeping is
 prohibited' problem.


Er, SWIs are interrupts too.  Trying to sleep in a SWI handler should
cause the same message.  This commit uses the general taskqueue SWI
handler.  taskqueue(9) implicitly says that only the taskqueue thread
handler can sleep (it gives malloc(M_WAITOK) as an example of something
that can only be done in thread context).

Bruce

You're right, but sleeping in SWI's has never been enforced. CAM relies on it, for better or worse, and until that's fixed it's pointless to
start enforcing it.

Scott
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to