Messages in this thread | | | Date | Tue, 17 Oct 2000 19:21:04 -0400 | From | Jeff Garzik <> | Subject | Re: PATCH 2.4.0.10.3: pc_keyb and q40_keyb cleanup |
| |
Andrea Arcangeli wrote: > > On Tue, Oct 17, 2000 at 05:26:23AM -0400, Jeff Garzik wrote: > > Well, the -spin lock- exists for serialization. My question is.... Why > > does pc_keyb irq handler disable local irqs for this case? What is the > > race/deadlock that exists with spin_lock in the irq handler, but does > > not exist with spin_lock_irqsave in the irq handler? > > As said the save part isn't necessary. > > This is a trace of the deadlock: > > irq 2 runs > keyboard_interrupt > irqs are been left enabled > spin_lock() > here irq 12 runs > keyboard_interrupt > here doesn't matter if irqs are enabled or disabled of course > spin_lock() -> dealdock
Thanks a bunch Andrea. That's the piece I was looking for -- I didn't know that two different irqs were calling the same code. Learn something new every day :)
I wonder if q40_keyb has the same thing to worry about....
-- Jeff Garzik | The difference between laziness and Building 1024 | prioritization is the end result. MandrakeSoft | - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
| |