diff options
author | Ralph Campbell <ralph.campbell@qlogic.com> | 2007-06-18 17:24:37 -0400 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2007-07-09 23:12:26 -0400 |
commit | 2c9749c3b534ea0e606b7ee2c29849bbb8d5b0a9 (patch) | |
tree | 50e4bb91927838c2184d2e90240168096bf234f1 /drivers/infiniband | |
parent | fdc7215fbd7b7652b052d1fb7893afe324dba7aa (diff) |
IB/ipath: Fix problem with next WQE after a UC completion
This patch fixes a bug introduced when moving some code around for
readability.
Setting the wqe pointer at the end of the function is a NOP since it
isn't used. Move it back to where it is used.
Signed-off-by: Ralph Campbell <ralph.campbell@qlogic.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband')
-rw-r--r-- | drivers/infiniband/hw/ipath/ipath_uc.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/infiniband/hw/ipath/ipath_uc.c b/drivers/infiniband/hw/ipath/ipath_uc.c index 1c2b03c2ef5e..49d650cabccf 100644 --- a/drivers/infiniband/hw/ipath/ipath_uc.c +++ b/drivers/infiniband/hw/ipath/ipath_uc.c | |||
@@ -58,7 +58,6 @@ static void complete_last_send(struct ipath_qp *qp, struct ipath_swqe *wqe, | |||
58 | wc->port_num = 0; | 58 | wc->port_num = 0; |
59 | ipath_cq_enter(to_icq(qp->ibqp.send_cq), wc, 0); | 59 | ipath_cq_enter(to_icq(qp->ibqp.send_cq), wc, 0); |
60 | } | 60 | } |
61 | wqe = get_swqe_ptr(qp, qp->s_last); | ||
62 | } | 61 | } |
63 | 62 | ||
64 | /** | 63 | /** |
@@ -97,8 +96,10 @@ int ipath_make_uc_req(struct ipath_qp *qp, | |||
97 | * Signal the completion of the last send | 96 | * Signal the completion of the last send |
98 | * (if there is one). | 97 | * (if there is one). |
99 | */ | 98 | */ |
100 | if (qp->s_last != qp->s_tail) | 99 | if (qp->s_last != qp->s_tail) { |
101 | complete_last_send(qp, wqe, &wc); | 100 | complete_last_send(qp, wqe, &wc); |
101 | wqe = get_swqe_ptr(qp, qp->s_last); | ||
102 | } | ||
102 | 103 | ||
103 | /* Check if send work queue is empty. */ | 104 | /* Check if send work queue is empty. */ |
104 | if (qp->s_tail == qp->s_head) | 105 | if (qp->s_tail == qp->s_head) |