Re: [PATCH] x86: small unifications of address printing



On Tue, Jul 1, 2008 at 8:29 PM, Andi Kleen <andi@xxxxxxxxxxxxxx> wrote:
Vegard Nossum <vegard.nossum@xxxxxxxxx> writes:

'man 3 printf' tells me that %p should be printed as if by %#x, but
this is not true for the kernel, which does not use the '0x' prefix
for the %p conversion specifier.

Problem is that %p will not pad to 8/16 digits. Addresses are traditionally
padded.

Yes, it will, and correctly too:

case 'p':
flags |= SMALL;
if (field_width == -1) {
field_width = 2*sizeof(void *);
flags |= ZEROPAD;
}

Or did I read this code wrong? field_width is initialized to -1 by
default unless overridden. The SMALL flag means lowercase hexadecimal
digits.


Vegard

--
"The animistic metaphor of the bug that maliciously sneaked in while
the programmer was not looking is intellectually dishonest as it
disguises that the error is the programmer's own creation."
-- E. W. Dijkstra, EWD1036
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • Re: Decimal Data Type bit layout
    ... flags represent the scale and the sign, ... > Sorry, I meant 11-bit exponent (I've got floats, doubles, and decimals all ... >> That's exactly the layout - if you look at the docs for Decimal, ... >> which 28 digits is insufficient, but a couple more digits would be ...
    (microsoft.public.dotnet.framework.clr)
  • Re: PAD Frames
    ... recieved tens of thousands of errors when running DRC on the pad ... What layout is generating those flags. ...
    (comp.cad.cadence)

Loading