aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband
diff options
context:
space:
mode:
authorRoland Dreier <rolandd@cisco.com>2008-03-11 21:35:20 -0400
committerRoland Dreier <rolandd@cisco.com>2008-03-11 21:35:20 -0400
commit4200406b8fbbf309f4fffb339bd16c4553ae0c30 (patch)
treecb734632dc9fce70535cd873c8c2fa244262a9e6 /drivers/infiniband
parentb3e2749bf32f61e7beb259eb7cfb066d2ec6ad65 (diff)
IPoIB/cm: Set tx_wr.num_sge in connected mode post_send()
Commit 7143740d ("IPoIB: Add send gather support") made it possible for tx_wr.num_sge to be != 1 -- this happens if send gather support is enabled. However, the code in the connected mode post_send() function assumes the old invariant, namely that tx_wr.num_sge is always 1. Fix this by explicitly setting tx_wr.num_sge to 1 in the CM post_send(). Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband')
-rw-r--r--drivers/infiniband/ulp/ipoib/ipoib_cm.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_cm.c b/drivers/infiniband/ulp/ipoib/ipoib_cm.c
index 52b1bebfa744..4e8d0281f8bc 100644
--- a/drivers/infiniband/ulp/ipoib/ipoib_cm.c
+++ b/drivers/infiniband/ulp/ipoib/ipoib_cm.c
@@ -637,6 +637,7 @@ static inline int post_send(struct ipoib_dev_priv *priv,
637 priv->tx_sge[0].addr = addr; 637 priv->tx_sge[0].addr = addr;
638 priv->tx_sge[0].length = len; 638 priv->tx_sge[0].length = len;
639 639
640 priv->tx_wr.num_sge = 1;
640 priv->tx_wr.wr_id = wr_id | IPOIB_OP_CM; 641 priv->tx_wr.wr_id = wr_id | IPOIB_OP_CM;
641 642
642 return ib_post_send(tx->qp, &priv->tx_wr, &bad_wr); 643 return ib_post_send(tx->qp, &priv->tx_wr, &bad_wr);