Patrick, Please ignore my comment prior in this thread about using spin_lock_irq() vs. spin_lock_irqsave(). Between lack of sleep and trying to install Fedora 10 and recover my data on what now appears to be a failing motherboard/cpu, I made an error. I realized spinlock functions should always disable local IRQs (*smacks forehead*). What one has to take care with is unconditionally re-enabling local IRQs with spin_unlock_irq(). One would think that a work handler is known to be called in a non-irq context. So, at the risk of being wrong again, using spin_unlock_irq() should be OK, if spin_lock_irq() is allowed by the kernel in a work handler context (which your experimentation indicates that it is not). Regards, Andy -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html