[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a781481a0705301456n246e7185ife2a144eae3179b3@mail.gmail.com>
Date: Thu, 31 May 2007 03:26:31 +0530
From: "Satyam Sharma" <satyam.sharma@...il.com>
To: "Randy Dunlap" <randy.dunlap@...cle.com>
Cc: "Christoph Lameter" <clameter@....com>,
"Andrew Morton" <akpm@...ux-foundation.org>,
linux-kernel@...r.kernel.org, hugh@...itas.com
Subject: Re: [PATCH 1/3] hexdump: more output formatting
Hello Randy,
> Add a prefix string parameter. Callers are responsible for any
> string length/alignment that they want to see in the output. I.e.,
> callers should pad strings to achieve alignment if they want that.
>
> Add rowsize parameter. This is the number of raw data bytes
> to be printed per line. Must be 16 or 32.
>
> Add a group_size parameter. This allows callers to dump values
> as 1-byte, 2-byte, 4-byte, or 8-byte numbers. Default is
> 1-byte numbers. If the total length is not an even multiple
> of group_size, 1-byte numbers are printed.
I wonder if (over-)engineering could hurt its adoption by more kernel
users. There aren't very many 8-argument monsters in the kernel,
and one would expect hexdump() to be easier on the fingers to
type? :-) Why not just continue with reasonable default/fixed rowsize
and groupsize values?
> Add an "ascii" output parameter. This causes ASCII data output
> following the hex data output.
[...]
> + if (!ascii)
> + goto nil;
> +
> + if ((lx + 1) < linebuflen)
> linebuf[lx++] = ' ';
> - }
> - for (j = 0; (j < 16) && (j < len) && (lx + 2) < linebuflen; j++)
> + for (j = 0; (j < rowsize) && (j < len) && (lx + 2) < linebuflen; j++)
> linebuf[lx++] = isprint(ptr[j]) ? ptr[j] : '.';
> +nil:
> linebuf[lx++] = '\0';
if (ascii) {
...
}
linebuf[lx++] = '\0';
would help lose a goto and label.
Satyam
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists