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

Alastair D'Silva alastair at d-silva.org
Fri Apr 12 23:31:27 UTC 2019


> -----Original Message-----
> From: Petr Mladek <pmladek at suse.com>
> Sent: Saturday, 13 April 2019 12:12 AM
> To: Alastair D'Silva <alastair at au1.ibm.com>
> Cc: alastair at d-silva.org; Jani Nikula <jani.nikula at linux.intel.com>;
Joonas
> Lahtinen <joonas.lahtinen at linux.intel.com>; Rodrigo Vivi
> <rodrigo.vivi at intel.com>; David Airlie <airlied at linux.ie>; Daniel Vetter
> <daniel at ffwll.ch>; Karsten Keil <isdn at linux-pingi.de>; Jassi Brar
> <jassisinghbrar at gmail.com>; Tom Lendacky <thomas.lendacky at amd.com>;
> David S. Miller <davem at davemloft.net>; Jose Abreu
> <Jose.Abreu at synopsys.com>; Kalle Valo <kvalo at codeaurora.org>;
> Stanislaw Gruszka <sgruszka at redhat.com>; Benson Leung
> <bleung at chromium.org>; Enric Balletbo i Serra
> <enric.balletbo at collabora.com>; James E.J. Bottomley
> <jejb at linux.ibm.com>; Martin K. Petersen <martin.petersen at oracle.com>;
> Greg Kroah-Hartman <gregkh at linuxfoundation.org>; Alexander Viro
> <viro at zeniv.linux.org.uk>; Sergey Senozhatsky
> <sergey.senozhatsky at gmail.com>; Steven Rostedt <rostedt at goodmis.org>;
> Andrew Morton <akpm at linux-foundation.org>; intel-
> gfx at lists.freedesktop.org; dri-devel at lists.freedesktop.org; linux-
> kernel at vger.kernel.org; netdev at vger.kernel.org;
> ath10k at lists.infradead.org; linux-wireless at vger.kernel.org; linux-
> scsi at vger.kernel.org; linux-fbdev at vger.kernel.org;
> devel at driverdev.osuosl.org; linux-fsdevel at vger.kernel.org
> 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 at d-silva.org>
> >
> > 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 at d-silva.org>
> > ---
> >  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?

> >  		drm_printf(m, "[%04zx] %s\n", pos, line);
> >
> >  		prev = buf + pos;
> > diff --git a/include/linux/printk.h b/include/linux/printk.h index
> > c014e5573665..82975853c400 100644
> > --- a/include/linux/printk.h
> > +++ b/include/linux/printk.h
> > @@ -493,7 +493,7 @@ enum {
> >
> >  extern int hex_dump_to_buffer(const void *buf, size_t len, int rowsize,
> >  			      int groupsize, char *linebuf, size_t
linebuflen,
> > -			      bool ascii);
> > +			      u64 flags);
> 
> I wonder how fancy hex_dump could be. IMHO, u32 should be enough.
> The last famous words ;-)
> 
> Best Regards,
> Petr
> 
> 
> ---
> This email has been checked for viruses by AVG.
> https://www.avg.com




More information about the dri-devel mailing list