On 10-May-2004 Takashi Iwai wrote: >> > Some drivers use spin_lock_irq() a lot, while others always use >> > spin_lock_irqsave(). I can't see the difference. When it's safe >> > using the _irq() version ? >> >> Only when you know that you are not in interrupt context. > > also, not in the context which already disabled irq.
Yes, I read the famous Rusty's unreliable guide. My question was ALSA-specific. The point is that I don't know when those conditions are true. Can and_pcm_period_elapsed() call anything other than the pcm callbacks ? Does the ALSA middle layer ever disable interrupts before calling a driver function ? If it doesn't, I can replace spin_lock_irqsave() with spin_lock_irq() almost everything. Some callbacks are atomic according to the tutorial, but it doesn't say if interrupts are disabled too. Are irq (and preempt) disabled before calling .prepare and .trigger callbacks ? -- Giuliano. ------------------------------------------------------- This SF.Net email is sponsored by Sleepycat Software Learn developer strategies Cisco, Motorola, Ericsson & Lucent use to deliver higher performing products faster, at low TCO. http://www.sleepycat.com/telcomwpreg.php?From=osdnemail3 _______________________________________________ Alsa-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-devel