Lines Matching refs:wc
173 static void ipoib_ib_handle_rx_wc(struct net_device *dev, struct ib_wc *wc) in ipoib_ib_handle_rx_wc() argument
176 unsigned int wr_id = wc->wr_id & ~IPOIB_OP_RECV; in ipoib_ib_handle_rx_wc()
183 wr_id, wc->status); in ipoib_ib_handle_rx_wc()
193 if (unlikely(wc->status != IB_WC_SUCCESS)) { in ipoib_ib_handle_rx_wc()
194 if (wc->status != IB_WC_WR_FLUSH_ERR) in ipoib_ib_handle_rx_wc()
197 wc->status, wr_id, wc->vendor_err); in ipoib_ib_handle_rx_wc()
217 wc->byte_len, wc->slid); in ipoib_ib_handle_rx_wc()
221 skb_put(skb, wc->byte_len); in ipoib_ib_handle_rx_wc()
226 if (!(wc->wc_flags & IB_WC_GRH) || dgid->raw[0] != 0xff) in ipoib_ib_handle_rx_wc()
239 if (wc->slid == priv->local_lid && wc->src_qp == priv->qp->qp_num) { in ipoib_ib_handle_rx_wc()
242 if ((wc->wc_flags & IB_WC_GRH) && in ipoib_ib_handle_rx_wc()
264 likely(wc->wc_flags & IB_WC_IP_CSUM_OK)) in ipoib_ib_handle_rx_wc()
385 static void ipoib_ib_handle_tx_wc(struct net_device *dev, struct ib_wc *wc) in ipoib_ib_handle_tx_wc() argument
388 unsigned int wr_id = wc->wr_id; in ipoib_ib_handle_tx_wc()
392 wr_id, wc->status); in ipoib_ib_handle_tx_wc()
418 if (wc->status != IB_WC_SUCCESS && in ipoib_ib_handle_tx_wc()
419 wc->status != IB_WC_WR_FLUSH_ERR) { in ipoib_ib_handle_tx_wc()
423 wc->status, wr_id, wc->vendor_err); in ipoib_ib_handle_tx_wc()
437 struct ib_wc *wc; in poll_tx() local
441 wc = priv->send_wc + i; in poll_tx()
442 if (wc->wr_id & IPOIB_OP_CM) in poll_tx()
469 struct ib_wc *wc = priv->ibwc + i; in ipoib_rx_poll() local
471 if (wc->wr_id & IPOIB_OP_RECV) { in ipoib_rx_poll()
473 if (wc->wr_id & IPOIB_OP_CM) in ipoib_rx_poll()
474 ipoib_cm_handle_rx_wc(dev, wc); in ipoib_rx_poll()
476 ipoib_ib_handle_rx_wc(dev, wc); in ipoib_rx_poll()
504 struct ib_wc *wc; in ipoib_tx_poll() local
510 wc = priv->send_wc + i; in ipoib_tx_poll()
511 if (wc->wr_id & IPOIB_OP_CM) in ipoib_tx_poll()
512 ipoib_cm_handle_tx_wc(dev, wc); in ipoib_tx_poll()
514 ipoib_ib_handle_tx_wc(dev, wc); in ipoib_tx_poll()