diff options
author | Ralph Campbell <ralphc@pathscale.com> | 2007-05-03 12:40:51 -0700 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2007-05-06 21:18:11 -0700 |
commit | 6ed89b9574776d4178f1ad754d20e4f1e5a4b6c8 (patch) | |
tree | 6aafb2518c2cf83566ef7276b9d4424b8dd31207 | |
parent | 1a70a05d9d2b30db3e56f8cfbebb175663b41bad (diff) | |
download | op-kernel-dev-6ed89b9574776d4178f1ad754d20e4f1e5a4b6c8.zip op-kernel-dev-6ed89b9574776d4178f1ad754d20e4f1e5a4b6c8.tar.gz |
IB/ipath: Fix two more spin lock problems
Fix a missing unlock in ipath_rc_rcv_resp() and remove an extra unlock
from ipath_rc_rcv_error().
Signed-off-by: Ralph Campbell <ralph.campbell@qlogic.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
-rw-r--r-- | drivers/infiniband/hw/ipath/ipath_rc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/ipath/ipath_rc.c b/drivers/infiniband/hw/ipath/ipath_rc.c index 9e68c91..f4d729d 100644 --- a/drivers/infiniband/hw/ipath/ipath_rc.c +++ b/drivers/infiniband/hw/ipath/ipath_rc.c @@ -1257,6 +1257,7 @@ ack_err: wc.dlid_path_bits = 0; wc.port_num = 0; ipath_sqerror_qp(qp, &wc); + spin_unlock_irqrestore(&qp->s_lock, flags); bail: return; } @@ -1436,7 +1437,6 @@ static inline int ipath_rc_rcv_error(struct ipath_ibdev *dev, break; } qp->r_nak_state = 0; - spin_unlock_irq(&qp->s_lock); tasklet_hi_schedule(&qp->s_task); unlock_done: |