On Fri, 23 Sep 2005, Oliver Neukum wrote:

> A driver using spin_lock_irq() in a tasklet is buggy. You can always use
> irqsave. It will just be slower. But in a tasklet or interrupt handler
> spin_lock() will do. Basically these locks differ in whether they shut down
> irq processing on the local CPU. In interrupt it is down and must not be
> reenabled. Therefore spin_lock_irq() is deadly.

This may depend on the particular architecture or platform.  On x86,
general interrupts are not always disabled during interrupt handlers.  
Only the particular IRQ line being handled.

Furthermore, isn't it true that tasklets, like all bottom halves, run with 
interrupts enabled?

Alan Stern



-------------------------------------------------------
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42" plasma tv or your very own
Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to