From 3c17abe127dd42b62d97820703e1a800d43ffbc3 Mon Sep 17 00:00:00 2001 From: Frank Zago Date: Wed, 9 Dec 2009 13:51:36 -0800 Subject: [PATCH] --- yaml --- r: 177117 b: refs/heads/master c: 4293fdc115e1e4f83dcb9ec6cbd3a54c563835f0 h: refs/heads/master i: 177115: f6b6883802566457fd7e1c00d7bd67524a02e0d1 v: v3 --- [refs] | 2 +- trunk/drivers/infiniband/hw/nes/nes_verbs.c | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 28d4df00aa50..4006efa2d95b 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e5dec39474fac3458ad6a649eab8cabfc977ae87 +refs/heads/master: 4293fdc115e1e4f83dcb9ec6cbd3a54c563835f0 diff --git a/trunk/drivers/infiniband/hw/nes/nes_verbs.c b/trunk/drivers/infiniband/hw/nes/nes_verbs.c index 25b52d2478a8..0b17c01bb9fa 100644 --- a/trunk/drivers/infiniband/hw/nes/nes_verbs.c +++ b/trunk/drivers/infiniband/hw/nes/nes_verbs.c @@ -3554,8 +3554,10 @@ static int nes_post_recv(struct ib_qp *ibqp, struct ib_recv_wr *ib_wr, u32 counter; u32 total_payload_length; - if (nesqp->ibqp_state > IB_QPS_RTS) - return -EINVAL; + if (nesqp->ibqp_state > IB_QPS_RTS) { + err = -EINVAL; + goto out; + } spin_lock_irqsave(&nesqp->lock, flags); @@ -3618,6 +3620,7 @@ static int nes_post_recv(struct ib_qp *ibqp, struct ib_recv_wr *ib_wr, spin_unlock_irqrestore(&nesqp->lock, flags); +out: if (err) *bad_wr = ib_wr; return err;