Sun Feb 8 10:19:34 CET 2009
"spin_lock_irq disables local interrupts and then takes the spin_lock.
If you know you're in process context and other users may be in
interrupt context, this is the correct call to make.
spin_lock_irqsave saves local interrupt state into the flags variable,
disables interrupts, then takes the spin_lock. spin_unlock_irqrestore
restores the local state saved in the flags. Use this variant if you
don't know whether you're in interrupt or process context."
So, if the assumtions above are correct, then spin_lock_irq must be
used by all functions called from process context and
spin_lock_irqsave must be used by all functions called from an unknown
More information about the linux-dvb