IB/IPoIB: Simplify ib_post_(send|recv|srq_recv)() calls
Instead of declaring and passing a dummy 'bad_wr' pointer, pass NULL as third argument to ib_post_(send|recv|srq_recv)(). Signed-off-by: Bart Van Assche <bart.vanassche@wdc.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
This commit is contained in:
Родитель
1fec77bf8f
Коммит
4b4671a0f2
|
@ -94,7 +94,6 @@ static void ipoib_cm_dma_unmap_rx(struct ipoib_dev_priv *priv, int frags,
|
|||
static int ipoib_cm_post_receive_srq(struct net_device *dev, int id)
|
||||
{
|
||||
struct ipoib_dev_priv *priv = ipoib_priv(dev);
|
||||
struct ib_recv_wr *bad_wr;
|
||||
int i, ret;
|
||||
|
||||
priv->cm.rx_wr.wr_id = id | IPOIB_OP_CM | IPOIB_OP_RECV;
|
||||
|
@ -102,7 +101,7 @@ static int ipoib_cm_post_receive_srq(struct net_device *dev, int id)
|
|||
for (i = 0; i < priv->cm.num_frags; ++i)
|
||||
priv->cm.rx_sge[i].addr = priv->cm.srq_ring[id].mapping[i];
|
||||
|
||||
ret = ib_post_srq_recv(priv->cm.srq, &priv->cm.rx_wr, &bad_wr);
|
||||
ret = ib_post_srq_recv(priv->cm.srq, &priv->cm.rx_wr, NULL);
|
||||
if (unlikely(ret)) {
|
||||
ipoib_warn(priv, "post srq failed for buf %d (%d)\n", id, ret);
|
||||
ipoib_cm_dma_unmap_rx(priv, priv->cm.num_frags - 1,
|
||||
|
@ -120,7 +119,6 @@ static int ipoib_cm_post_receive_nonsrq(struct net_device *dev,
|
|||
struct ib_sge *sge, int id)
|
||||
{
|
||||
struct ipoib_dev_priv *priv = ipoib_priv(dev);
|
||||
struct ib_recv_wr *bad_wr;
|
||||
int i, ret;
|
||||
|
||||
wr->wr_id = id | IPOIB_OP_CM | IPOIB_OP_RECV;
|
||||
|
@ -128,7 +126,7 @@ static int ipoib_cm_post_receive_nonsrq(struct net_device *dev,
|
|||
for (i = 0; i < IPOIB_CM_RX_SG; ++i)
|
||||
sge[i].addr = rx->rx_ring[id].mapping[i];
|
||||
|
||||
ret = ib_post_recv(rx->qp, wr, &bad_wr);
|
||||
ret = ib_post_recv(rx->qp, wr, NULL);
|
||||
if (unlikely(ret)) {
|
||||
ipoib_warn(priv, "post recv failed for buf %d (%d)\n", id, ret);
|
||||
ipoib_cm_dma_unmap_rx(priv, IPOIB_CM_RX_SG - 1,
|
||||
|
@ -212,7 +210,6 @@ static void ipoib_cm_free_rx_ring(struct net_device *dev,
|
|||
|
||||
static void ipoib_cm_start_rx_drain(struct ipoib_dev_priv *priv)
|
||||
{
|
||||
struct ib_send_wr *bad_wr;
|
||||
struct ipoib_cm_rx *p;
|
||||
|
||||
/* We only reserved 1 extra slot in CQ for drain WRs, so
|
||||
|
@ -227,7 +224,7 @@ static void ipoib_cm_start_rx_drain(struct ipoib_dev_priv *priv)
|
|||
*/
|
||||
p = list_entry(priv->cm.rx_flush_list.next, typeof(*p), list);
|
||||
ipoib_cm_rx_drain_wr.wr_id = IPOIB_CM_RX_DRAIN_WRID;
|
||||
if (ib_post_send(p->qp, &ipoib_cm_rx_drain_wr, &bad_wr))
|
||||
if (ib_post_send(p->qp, &ipoib_cm_rx_drain_wr, NULL))
|
||||
ipoib_warn(priv, "failed to post drain wr\n");
|
||||
|
||||
list_splice_init(&priv->cm.rx_flush_list, &priv->cm.rx_drain_list);
|
||||
|
@ -699,13 +696,11 @@ static inline int post_send(struct ipoib_dev_priv *priv,
|
|||
unsigned int wr_id,
|
||||
struct ipoib_tx_buf *tx_req)
|
||||
{
|
||||
struct ib_send_wr *bad_wr;
|
||||
|
||||
ipoib_build_sge(priv, tx_req);
|
||||
|
||||
priv->tx_wr.wr.wr_id = wr_id | IPOIB_OP_CM;
|
||||
|
||||
return ib_post_send(tx->qp, &priv->tx_wr.wr, &bad_wr);
|
||||
return ib_post_send(tx->qp, &priv->tx_wr.wr, NULL);
|
||||
}
|
||||
|
||||
void ipoib_cm_send(struct net_device *dev, struct sk_buff *skb, struct ipoib_cm_tx *tx)
|
||||
|
|
|
@ -101,7 +101,6 @@ static void ipoib_ud_dma_unmap_rx(struct ipoib_dev_priv *priv,
|
|||
static int ipoib_ib_post_receive(struct net_device *dev, int id)
|
||||
{
|
||||
struct ipoib_dev_priv *priv = ipoib_priv(dev);
|
||||
struct ib_recv_wr *bad_wr;
|
||||
int ret;
|
||||
|
||||
priv->rx_wr.wr_id = id | IPOIB_OP_RECV;
|
||||
|
@ -109,7 +108,7 @@ static int ipoib_ib_post_receive(struct net_device *dev, int id)
|
|||
priv->rx_sge[1].addr = priv->rx_ring[id].mapping[1];
|
||||
|
||||
|
||||
ret = ib_post_recv(priv->qp, &priv->rx_wr, &bad_wr);
|
||||
ret = ib_post_recv(priv->qp, &priv->rx_wr, NULL);
|
||||
if (unlikely(ret)) {
|
||||
ipoib_warn(priv, "receive failed for buf %d (%d)\n", id, ret);
|
||||
ipoib_ud_dma_unmap_rx(priv, priv->rx_ring[id].mapping);
|
||||
|
@ -542,7 +541,6 @@ static inline int post_send(struct ipoib_dev_priv *priv,
|
|||
struct ipoib_tx_buf *tx_req,
|
||||
void *head, int hlen)
|
||||
{
|
||||
struct ib_send_wr *bad_wr;
|
||||
struct sk_buff *skb = tx_req->skb;
|
||||
|
||||
ipoib_build_sge(priv, tx_req);
|
||||
|
@ -559,7 +557,7 @@ static inline int post_send(struct ipoib_dev_priv *priv,
|
|||
} else
|
||||
priv->tx_wr.wr.opcode = IB_WR_SEND;
|
||||
|
||||
return ib_post_send(priv->qp, &priv->tx_wr.wr, &bad_wr);
|
||||
return ib_post_send(priv->qp, &priv->tx_wr.wr, NULL);
|
||||
}
|
||||
|
||||
int ipoib_send(struct net_device *dev, struct sk_buff *skb,
|
||||
|
|
Загрузка…
Ссылка в новой задаче