Always set ib_post_send()'s bad_wr when an error occurred.

Signed-off-by: Frank Zago <[email protected]>
---

 drivers/infiniband/hw/amso1100/c2_qp.c |    7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

Index: linux-2.6.31/drivers/infiniband/hw/amso1100/c2_qp.c
===================================================================
--- linux-2.6.31.orig/drivers/infiniband/hw/amso1100/c2_qp.c    2009-12-02
19:20:53.000000000 -0600
+++ linux-2.6.31/drivers/infiniband/hw/amso1100/c2_qp.c 2009-12-02
19:23:17.000000000 -0600
@@ -798,8 +798,10 @@
        u8 actual_sge_count;
        u32 msg_size;

-       if (qp->state > IB_QPS_RTS)
-               return -EINVAL;
+       if (qp->state > IB_QPS_RTS) {
+               err = -EINVAL;
+               goto out;
+       }

        while (ib_wr) {

@@ -930,6 +932,7 @@
                ib_wr = ib_wr->next;
        }

+out:
        if (err)
                *bad_wr = ib_wr;
        return err;

-- 

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to