Re: [PATCH 02/49] staging: rtl8723bs: replace DBG_871X_SEL log macro with netdev_dbg()

Dan Carpenter
2021-04-28T09:29:04Z

On Fri, Apr 23, 2021 at 06:52:49PM +0200, Fabio Aiuto wrote:
> On Fri, Apr 23, 2021 at 08:27:58AM -0700, Joe Perches wrote:
> > On Fri, 2021-04-23 at 16:57 +0200, Fabio Aiuto wrote:
> > > replace DBG_871X_SEL log macro with the net device driver
> > > recommended netdev_dbg().
> > >
> > > This macro by default does a raw printk, and the alternative
> > > behaviour, never triggered is a seq_print() call.
> > []
> > > diff --git a/drivers/staging/rtl8723bs/core/rtw_debug.c b/drivers/staging/rtl8723bs/core/rtw_debug.c
> > []
> > > @@ -23,9 +23,10 @@ void mac_reg_dump(void *sel, struct adapter *adapter)
> > >   for (i = 0x0; i < 0x800; i += 4) {
> > >   if (j%4 == 1)
> > >   netdev_dbg(adapter->pnetdev, "0x%03x", i);
> > > - DBG_871X_SEL(sel, " 0x%08x ", rtw_read32(adapter, i));
> > > + netdev_dbg(adapter->pnetdev, " 0x%08x ",
> > > + rtw_read32(adapter, i));
> > >   if ((j++)%4 == 0)
> > > - DBG_871X_SEL(sel, "\n");
> > > + netdev_dbg(adapter->pnetdev, "\n");
> > >   }
> >
> > This makes a mess of the output as each netdev_dbg call
> > is a separate line.
> >
> > Dumping 1000 register lines into output logs seems impolite
> > at best, even for debugging.
> >
> > This _might_ be rewritten to something like:
> >
> > void dump_4_regs(struct adapter *adapter, int offset)
> > {
> > u32 reg[4];
> > int i;
> >
> > for (i = 0; i < 4; i++)
> > reg[i] = rtw_read32(adapter, offset + i);
> >
> > netdev_dbg(adapter->pnetdev, "0x%03x 0x%08x 0x%08x 0x%08x 0x%08x\n",
> > i, reg[0], reg[1], reg[2], reg[3]);
> > }
> >
> > void mac_reg_dump(...)
> > {
> > ...
> >
> > for (i = 0; i < 0x800; i += 4)
> > dump_4_regs(adapter, i);
> >
> >
> >
>
> interesting, sure that will be matter of another patch series,
> the ugly output was already there, old macro used to wrap a raw
> printk...

The raw printk doesn't automatically add a new line at the end but a
netdev_dbg() does. (You're still supposed to add a manual \n to those
but if you don't the lower layers will do it automatically.)

regards,
dan carpenter