]> git.karo-electronics.de Git - karo-tx-linux.git/commit
sparc64: Fix lockdep issues in LDC protocol layer.
authorDavid S. Miller <davem@davemloft.net>
Wed, 23 Jul 2008 05:34:29 +0000 (22:34 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 1 Aug 2008 19:43:05 +0000 (12:43 -0700)
commitcbbe97a516566c1e8fde1adc035f443c26606d39
tree9e779370c9f0502e691c5929964480393e15bed7
parent311fe3736a975517e1e25fa3e5f8625c27afb5f2
sparc64: Fix lockdep issues in LDC protocol layer.

[ Upstream commit b7c2a75725dee9b5643a0aae3a4cb47f52e00a49 ]

We're calling request_irq() with a IRQs disabled.

No straightforward fix exists because we want to
enable these IRQs and setup state atomically before
getting into the IRQ handler the first time.

What happens now is that we mark the VIRQ to not be
automatically enabled by request_irq().  Then we
make explicit enable_irq() calls when we grab the
LDC channel.

This way we don't need to call request_irq() illegally
under the LDC channel lock any more.

Bump LDC version and release date.

Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/sparc64/kernel/irq.c
arch/sparc64/kernel/ldc.c