aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw/nes/nes_verbs.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/infiniband/hw/nes/nes_verbs.c')
-rw-r--r--drivers/infiniband/hw/nes/nes_verbs.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/infiniband/hw/nes/nes_verbs.c b/drivers/infiniband/hw/nes/nes_verbs.c
index 0a2b18bad6ee..8ea75614b87c 100644
--- a/drivers/infiniband/hw/nes/nes_verbs.c
+++ b/drivers/infiniband/hw/nes/nes_verbs.c
@@ -1407,6 +1407,8 @@ static struct ib_qp *nes_create_qp(struct ib_pd *ibpd,
1407 return ERR_PTR(-EINVAL); 1407 return ERR_PTR(-EINVAL);
1408 } 1408 }
1409 1409
1410 nesqp->sig_all = (init_attr->sq_sig_type == IB_SIGNAL_ALL_WR);
1411
1410 /* update the QP table */ 1412 /* update the QP table */
1411 nesdev->nesadapter->qp_table[nesqp->hwqp.qp_id-NES_FIRST_QPN] = nesqp; 1413 nesdev->nesadapter->qp_table[nesqp->hwqp.qp_id-NES_FIRST_QPN] = nesqp;
1412 nes_debug(NES_DBG_QP, "netdev refcnt=%u\n", 1414 nes_debug(NES_DBG_QP, "netdev refcnt=%u\n",
@@ -3502,9 +3504,9 @@ static int nes_post_send(struct ib_qp *ibqp, struct ib_send_wr *ib_wr,
3502 if (err) 3504 if (err)
3503 break; 3505 break;
3504 3506
3505 if (ib_wr->send_flags & IB_SEND_SIGNALED) { 3507 if ((ib_wr->send_flags & IB_SEND_SIGNALED) || nesqp->sig_all)
3506 wqe_misc |= NES_IWARP_SQ_WQE_SIGNALED_COMPL; 3508 wqe_misc |= NES_IWARP_SQ_WQE_SIGNALED_COMPL;
3507 } 3509
3508 wqe->wqe_words[NES_IWARP_SQ_WQE_MISC_IDX] = cpu_to_le32(wqe_misc); 3510 wqe->wqe_words[NES_IWARP_SQ_WQE_MISC_IDX] = cpu_to_le32(wqe_misc);
3509 3511
3510 ib_wr = ib_wr->next; 3512 ib_wr = ib_wr->next;