IB/ipath: Don't call spin_lock_irq() from interrupt context
authorRalph Campbell <ralph.campbell@qlogic.com>
Fri, 27 Apr 2007 18:11:11 +0000 (11:11 -0700)
committerRoland Dreier <rolandd@cisco.com>
Tue, 1 May 2007 00:30:27 +0000 (17:30 -0700)
commit35ff032e65ab5cc03bbba46cefece7376c7c562f
tree76bfb852b0ccf0b095b39b4a4226da087d51dbdf
parentb9099ff63c75216d6ca10bce5a1abcd9293c27e6
IB/ipath: Don't call spin_lock_irq() from interrupt context

This patch fixes the problem reported by Bernd Schubert <bs@q-leap.de>
with kernel debug options enabled:

    BUG: at kernel/lockdep.c:1860 trace_hardirqs_on()

This was caused by using spin_lock_irq()/spin_unlock_irq() from
interrupt context.  Fix all the places that might be called from
interrupts to use spin_lock_irqsave()/spin_unlock_irqrestore().

Signed-off-by: Ralph Campbell <ralph.campbell@qlogic.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/hw/ipath/ipath_rc.c