Re: [PATCH rdma-rc] IB/ipoib: print only once when doesn't support IB_QP_CREATE_USE_GFP_NOIO

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 01, 2016 at 04:34:31PM +0200, Yuval Shaia wrote:
> On Tue, Nov 01, 2016 at 04:14:54PM +0200, Leon Romanovsky wrote:
> > On Tue, Nov 01, 2016 at 03:48:24PM +0200, Yuval Shaia wrote:
> > > On Tue, Nov 01, 2016 at 02:34:13PM +0200, Leon Romanovsky wrote:
> > > > From: Erez Shitrit <erezsh@xxxxxxxxxxxx>
> > > >
> > > > Currently when the card doesn't support IB_QP_CREATE_USE_GFP_NOIO it warns
> > > > on every QP creation, It becomes worse when driver works in connected mode
> > > > we will see one print on each new connection, instead do it once.
> > > >
> > > > Fixes: 09b93088d7 ('Add a QP creation flag to use GFP_NOIO allocations')
> > > > Signed-off-by: Erez Shitrit <erezsh@xxxxxxxxxxxx>
> > > > Signed-off-by: Leon Romanovsky <leon@xxxxxxxxxx>
> > > > ---
> > > >  drivers/infiniband/ulp/ipoib/ipoib_cm.c | 4 ++--
> > > >  1 file changed, 2 insertions(+), 2 deletions(-)
> > > >
> > > > diff --git a/drivers/infiniband/ulp/ipoib/ipoib_cm.c b/drivers/infiniband/ulp/ipoib/ipoib_cm.c
> > > > index 4ad297d..917393b 100644
> > > > --- a/drivers/infiniband/ulp/ipoib/ipoib_cm.c
> > > > +++ b/drivers/infiniband/ulp/ipoib/ipoib_cm.c
> > > > @@ -1053,8 +1053,8 @@ static struct ib_qp *ipoib_cm_create_tx_qp(struct net_device *dev, struct ipoib_
> > > >
> > > >  	tx_qp = ib_create_qp(priv->pd, &attr);
> > > >  	if (PTR_ERR(tx_qp) == -EINVAL) {
> > > > -		ipoib_warn(priv, "can't use GFP_NOIO for QPs on device %s, using GFP_KERNEL\n",
> > > > -			   priv->ca->name);
> > > > +		pr_warn_once("can't use GFP_NOIO for QPs on device %s, using GFP_KERNEL\n",
> > > > +			     priv->ca->name);
> > >
> > > But it will still re-print it for different device, right?
> >
> > Good question,
> >
> > pr_warn_once is defined as alias to printk_once [1]. That printk_once is
> > macro too [2] which will define local static read_once variable.
> >
> > [1] http://lxr.free-electrons.com/source/include/linux/printk.h#L359
> > [2] http://lxr.free-electrons.com/source/include/linux/printk.h#L322
>
> If only one HCA model is installed on the system then it should be fine,
> but wonder if more then one, would we like to see the warning again? i think
> yes.

It is correct and valid question and not for the multiple devices only.
Additional thing which was missed in such a trivial patch is the lost of
context which is printed by ipoib_warn and doesn't print in the case of
pr_warn.

Thanks for pointing and investing time in the review.

Doug,
Please drop it. We will respin it.


>
> >
> > >
> > > >  		attr.create_flags &= ~IB_QP_CREATE_USE_GFP_NOIO;
> > > >  		tx_qp = ib_create_qp(priv->pd, &attr);
> > > >  	}
> > > > --
> > > > 2.7.4
> > > >
> > > > --
> > > > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> > > > the body of a message to majordomo@xxxxxxxxxxxxxxx
> > > > More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
>

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux