net/smc: do not use IB_SEND_INLINE together with mapped data
smc specifies IB_SEND_INLINE for IB_WR_SEND ib_post_send calls, but provides a mapped buffer to be sent. This is inconsistent, since IB_SEND_INLINE works without mapped buffer. Problem has not been detected in the past, because tests had been limited to Connect X3 cards from Mellanox, whose mlx4 driver just ignored the IB_SEND_INLINE flag. For now, the IB_SEND_INLINE flag is removed. Signed-off-by: Ursula Braun <ubraun@linux.vnet.ibm.com> Reviewed-by: Thomas Richter <tmricht@linux.vnet.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
288c83902a
commit
2c9c16825e
|
@ -257,7 +257,6 @@ int smc_ib_create_queue_pair(struct smc_link *lnk)
|
|||
.max_recv_wr = SMC_WR_BUF_CNT * 3,
|
||||
.max_send_sge = SMC_IB_MAX_SEND_SGE,
|
||||
.max_recv_sge = 1,
|
||||
.max_inline_data = SMC_WR_TX_SIZE,
|
||||
},
|
||||
.sq_sig_type = IB_SIGNAL_REQ_WR,
|
||||
.qp_type = IB_QPT_RC,
|
||||
|
|
|
@ -447,7 +447,7 @@ static void smc_wr_init_sge(struct smc_link *lnk)
|
|||
lnk->wr_tx_ibs[i].num_sge = 1;
|
||||
lnk->wr_tx_ibs[i].opcode = IB_WR_SEND;
|
||||
lnk->wr_tx_ibs[i].send_flags =
|
||||
IB_SEND_SIGNALED | IB_SEND_SOLICITED | IB_SEND_INLINE;
|
||||
IB_SEND_SIGNALED | IB_SEND_SOLICITED;
|
||||
}
|
||||
for (i = 0; i < lnk->wr_rx_cnt; i++) {
|
||||
lnk->wr_rx_sges[i].addr =
|
||||
|
|
Loading…
Reference in New Issue