Warner Losh wrote this message on Thu, May 25, 2006 at 22:06 -0600: > > In the past, I've been against mandating that callouts/timeouts/generic > > taskqueues should not be allowed to sleep. However, after looking over > > the history of this problem as well as others, it seems that it's just > > too easy for driver authors to make bad assumptions and wind up with a > > priority inversion/deadlock like this. It would be relatively trivial > > to mark these contexts as being non-sleepable and have the msleep code > > enforce it, like is done with ithreads. What do you think? Anyways, > > thanks for looking at this and fixing it. > > At the very least, we should mandate that timeouts are a non-sleepable > event. Sleeping just doesn't work there. taskqueues, I'm less sure > of, since short sleeps there work, but do degrade performance. I like > this idea.
People worried about things like this should create their own thread for their taskqueue.. It's quite easy (simple macro declaration), and I did that for handling kq in kq... -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not." _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "[EMAIL PROTECTED]"