Message ID | 20170907103818.5303-1-yuval.shaia@oracle.com (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
On Thu, 2017-09-07 at 13:38 +0300, Yuval Shaia wrote: > From: Santosh Shilimkar <santosh.shilimkar@oracle.com> > > IPoIB doesn't support transport/rnr retry schemes as per > RFC so those errors are expected. No need to flood the > log files with them. > > Tested-by: Michael Nowak <michael.nowak@oracle.com> > Tested-by: Rafael Alejandro Peralez <rafael.peralez@oracle.com> > Tested-by: Liwen Huang <liwen.huang@oracle.com> > Tested-by: Hong Liu <hong.x.liu@oracle.com> > Reviewed-by: Mukesh Kacker <mukesh.kacker@oracle.com> > Reported-by: Rajiv Raja <rajiv.raja@oracle.com> > Signed-off-by: Santosh Shilimkar <santosh.shilimkar@oracle.com> > Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com> Even though this is a minor printk patch that could easily go to for- next, because it brings us more into compliance with the RFC I went ahead and processed it for rc. Thanks.
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_cm.c b/drivers/infiniband/ulp/ipoib/ipoib_cm.c index 14b62f7472b4..7774654c2ccb 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_cm.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_cm.c @@ -823,12 +823,18 @@ void ipoib_cm_handle_tx_wc(struct net_device *dev, struct ib_wc *wc) wc->status != IB_WC_WR_FLUSH_ERR) { struct ipoib_neigh *neigh; - if (wc->status != IB_WC_RNR_RETRY_EXC_ERR) - ipoib_warn(priv, "failed cm send event (status=%d, wrid=%d vend_err %x)\n", - wc->status, wr_id, wc->vendor_err); + /* IB_WC[_RNR]_RETRY_EXC_ERR error is part of the life cycle, + * so don't make waves. + */ + if (wc->status == IB_WC_RNR_RETRY_EXC_ERR || + wc->status == IB_WC_RETRY_EXC_ERR) + ipoib_dbg(priv, + "%s: failed cm send event (status=%d, wrid=%d vend_err 0x%x)\n", + __func__, wc->status, wr_id, wc->vendor_err); else - ipoib_dbg(priv, "failed cm send event (status=%d, wrid=%d vend_err %x)\n", - wc->status, wr_id, wc->vendor_err); + ipoib_warn(priv, + "%s: failed cm send event (status=%d, wrid=%d vend_err 0x%x)\n", + __func__, wc->status, wr_id, wc->vendor_err); spin_lock_irqsave(&priv->lock, flags); neigh = tx->neigh;