lots of malloc(M_WAITOK)'s in interrupt context from camisr

Andrew Gallatin gallatin at cs.duke.edu
Wed Apr 30 08:20:40 PDT 2003


Poul-Henning Kamp writes:
 > In message <16047.59314.532227.475952 at grasshopper.cs.duke.edu>, Andrew Gallatin
 >  writes:
 > >
 > >John Baldwin writes:
 > >
 > > > If you need to do more work in your interrupt routine than just wakeups
 > > > and dinking with registers, you can always wake up a software interrupt
 > > > handler or some other random kthread to do things that take a long amount
 > >
 > >Dumb question: Exactly what is one allowed to do in an INTR_FAST
 > >interrupt context?  Obviously, you can't sleep.  But can you call
 > >wakeup()?
 > 
 > Calling wakeup() is just about it, but we should actually define it
 > more precisely in a suitable man-page.

That would be cool.  Since wakeup() uses a spinlock,  I assume that
spinlocks are generally OK too..

Drew


More information about the freebsd-arch mailing list