RE: [PATCH 3/4] lib/hexdump.c: Replace ascii bool in hex_dump_to_buffer with flags

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

 



> -----Original Message-----
> From: Petr Mladek <pmladek@xxxxxxxx>
> Sent: Monday, 15 April 2019 7:24 PM
> To: Alastair D'Silva <alastair@xxxxxxxxxxx>
> Cc: 'Alastair D'Silva' <alastair@xxxxxxxxxxx>; 'Jani Nikula'
> <jani.nikula@xxxxxxxxxxxxxxx>; 'Joonas Lahtinen'
> <joonas.lahtinen@xxxxxxxxxxxxxxx>; 'Rodrigo Vivi'
<rodrigo.vivi@xxxxxxxxx>;
> 'David Airlie' <airlied@xxxxxxxx>; 'Daniel Vetter' <daniel@xxxxxxxx>;
'Karsten
> Keil' <isdn@xxxxxxxxxxxxxx>; 'Jassi Brar' <jassisinghbrar@xxxxxxxxx>; 'Tom
> Lendacky' <thomas.lendacky@xxxxxxx>; 'David S. Miller'
> <davem@xxxxxxxxxxxxx>; 'Jose Abreu' <Jose.Abreu@xxxxxxxxxxxx>; 'Kalle
> Valo' <kvalo@xxxxxxxxxxxxxx>; 'Stanislaw Gruszka' <sgruszka@xxxxxxxxxx>;
> 'Benson Leung' <bleung@xxxxxxxxxxxx>; 'Enric Balletbo i Serra'
> <enric.balletbo@xxxxxxxxxxxxx>; 'James E.J. Bottomley'
> <jejb@xxxxxxxxxxxxx>; 'Martin K. Petersen' <martin.petersen@xxxxxxxxxx>;
> 'Greg Kroah-Hartman' <gregkh@xxxxxxxxxxxxxxxxxxx>; 'Alexander Viro'
> <viro@xxxxxxxxxxxxxxxxxx>; 'Sergey Senozhatsky'
> <sergey.senozhatsky@xxxxxxxxx>; 'Steven Rostedt'
> <rostedt@xxxxxxxxxxx>; 'Andrew Morton' <akpm@xxxxxxxxxxxxxxxxxxxx>;
> intel-gfx@xxxxxxxxxxxxxxxxxxxxx; dri-devel@xxxxxxxxxxxxxxxxxxxxx; linux-
> kernel@xxxxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx;
> ath10k@xxxxxxxxxxxxxxxxxxx; linux-wireless@xxxxxxxxxxxxxxx; linux-
> scsi@xxxxxxxxxxxxxxx; linux-fbdev@xxxxxxxxxxxxxxx;
> devel@xxxxxxxxxxxxxxxxxxxx; linux-fsdevel@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH 3/4] lib/hexdump.c: Replace ascii bool in
> hex_dump_to_buffer with flags
> 
> On Sat 2019-04-13 09:31:27, Alastair D'Silva wrote:
> > > -----Original Message-----
> > > From: Petr Mladek <pmladek@xxxxxxxx>
> > > Sent: Saturday, 13 April 2019 12:12 AM
> > > To: Alastair D'Silva <alastair@xxxxxxxxxxx>
> > > Cc: alastair@xxxxxxxxxxx; Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx>;
> > Joonas
> > > Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx>; Rodrigo Vivi
> > > <rodrigo.vivi@xxxxxxxxx>; David Airlie <airlied@xxxxxxxx>; Daniel
> > > Vetter <daniel@xxxxxxxx>; Karsten Keil <isdn@xxxxxxxxxxxxxx>; Jassi
> > > Brar <jassisinghbrar@xxxxxxxxx>; Tom Lendacky
> > > <thomas.lendacky@xxxxxxx>; David S. Miller
> <davem@xxxxxxxxxxxxx>;
> > > Jose Abreu <Jose.Abreu@xxxxxxxxxxxx>; Kalle Valo
> > > <kvalo@xxxxxxxxxxxxxx>; Stanislaw Gruszka <sgruszka@xxxxxxxxxx>;
> > > Benson Leung <bleung@xxxxxxxxxxxx>; Enric Balletbo i Serra
> > > <enric.balletbo@xxxxxxxxxxxxx>; James E.J. Bottomley
> > > <jejb@xxxxxxxxxxxxx>; Martin K. Petersen
> > > <martin.petersen@xxxxxxxxxx>; Greg Kroah-Hartman
> > > <gregkh@xxxxxxxxxxxxxxxxxxx>; Alexander Viro
> > > <viro@xxxxxxxxxxxxxxxxxx>; Sergey Senozhatsky
> > > <sergey.senozhatsky@xxxxxxxxx>; Steven Rostedt
> > > <rostedt@xxxxxxxxxxx>; Andrew Morton <akpm@linux-
> foundation.org>;
> > > intel- gfx@xxxxxxxxxxxxxxxxxxxxx; dri-devel@xxxxxxxxxxxxxxxxxxxxx;
> > > linux- kernel@xxxxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx;
> > > ath10k@xxxxxxxxxxxxxxxxxxx; linux-wireless@xxxxxxxxxxxxxxx; linux-
> > > scsi@xxxxxxxxxxxxxxx; linux-fbdev@xxxxxxxxxxxxxxx;
> > > devel@xxxxxxxxxxxxxxxxxxxx; linux-fsdevel@xxxxxxxxxxxxxxx
> > > Subject: Re: [PATCH 3/4] lib/hexdump.c: Replace ascii bool in
> > > hex_dump_to_buffer with flags
> > >
> > > On Wed 2019-04-10 13:17:19, Alastair D'Silva wrote:
> > > > From: Alastair D'Silva <alastair@xxxxxxxxxxx>
> > > >
> > > > In order to support additional features in hex_dump_to_buffer,
> > > > replace the ascii bool parameter with flags.
> > > >
> > > > Signed-off-by: Alastair D'Silva <alastair@xxxxxxxxxxx>
> > > > ---
> > > >  drivers/gpu/drm/i915/intel_engine_cs.c            |  2 +-
> > > >  drivers/isdn/hardware/mISDN/mISDNisar.c           |  6 ++++--
> > > >  drivers/mailbox/mailbox-test.c                    |  2 +-
> > > >  drivers/net/ethernet/amd/xgbe/xgbe-drv.c          |  2 +-
> > > >  drivers/net/ethernet/synopsys/dwc-xlgmac-common.c |  2 +-
> > > >  drivers/net/wireless/ath/ath10k/debug.c           |  3 ++-
> > > >  drivers/net/wireless/intel/iwlegacy/3945-mac.c    |  2 +-
> > > >  drivers/platform/chrome/wilco_ec/debugfs.c        |  3 ++-
> > > >  drivers/scsi/scsi_logging.c                       |  8 +++-----
> > > >  drivers/staging/fbtft/fbtft-core.c                |  2 +-
> > > >  fs/seq_file.c                                     |  3 ++-
> > > >  include/linux/printk.h                            |  2 +-
> > > >  lib/hexdump.c                                     | 15
++++++++-------
> > > >  lib/test_hexdump.c                                |  5 +++--
> > > >  14 files changed, 31 insertions(+), 26 deletions(-)
> > > >
> > > > diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c
> > > > b/drivers/gpu/drm/i915/intel_engine_cs.c
> > > > index 49fa43ff02ba..fb133e729f9a 100644
> > > > --- a/drivers/gpu/drm/i915/intel_engine_cs.c
> > > > +++ b/drivers/gpu/drm/i915/intel_engine_cs.c
> > > > @@ -1318,7 +1318,7 @@ static void hexdump(struct drm_printer *m,
> > > > const
> > > void *buf, size_t len)
> > > >  		WARN_ON_ONCE(hex_dump_to_buffer(buf + pos, len -
> > > pos,
> > > >  						rowsize,
sizeof(u32),
> > > >  						line, sizeof(line),
> > > > -						false) >=
sizeof(line));
> > > > +						0) >= sizeof(line));
> > >
> > > It might be more clear when we define:
> > >
> > > #define HEXDUMP_BINARY 0
> >
> > This feels unnecessary, and weird. Omitting the flag won't disable the
> > hex output (as expected), and if you don't want hex output why call
> > hexdump in the first place?
> 
> Why do we have HEXDUMP_ASCII then?
> Why is the above funtion not using HEXDUMP_ASCII?
> Who would call it with (HEXDUMP_ASCII | HEXDUMP_BINARY)?

The ASCII flag controls the optional ASCII output, and replaces the boolean
that existed prior. A user would enable it in the same situations where they
currently pass true for the ascii parameter.

In the above example the author only wants the hex output, while in other
situations, both hex & ASCII output is desirable. If you just want ASCII
output, the caller should just use a printk or one of it's wrappers.

-- 
Alastair D'Silva           mob: 0423 762 819
skype: alastair_dsilva     msn: alastair@xxxxxxxxxxx
blog: http://alastair.d-silva.org    Twitter: @EvilDeece

_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel



[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux