Re: [PATCH][mtd-next] mtd: parser: print hex size_t value using correct %zx printk format specifier

From: Brian Norris
Date: Fri Jun 23 2017 - 14:16:01 EST


On Fri, Jun 23, 2017 at 07:03:11PM +0100, Colin Ian King wrote:
> On 23/06/17 18:51, Brian Norris wrote:
> > On Fri, Jun 23, 2017 at 12:02:34PM +0200, RafaÅ MiÅecki wrote:
> >> On 2017-06-23 11:00, Colin King wrote:
> >>> From: Colin Ian King <colin.king@xxxxxxxxxxxxx>
> >>>
> >>> Use %zx instead of %X for size_t variable offset, fixes build warning:
> >>>
> >>> warning: format '%X' expects argument of type 'unsigned int', but
> >>> argument
> >>> 2 has type 'size_t {aka long unsigned int}' [-Wformat=]
> >>>
> >>> Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
> >>
> >> I sent similar patch few hours earlier:
> >> [PATCH] mtd: parsers: trx: fix pr_err format for printing offset
> >> https://patchwork.ozlabs.org/patch/779789/
> >>
> >> Brian: you may pick the one with nicer commit message, whichever one you
> >> prefer :)
> >
> > I'll go with:
> > (a) the earlier one and
> > (b) the one that doesn't change 'X' to 'x'
> >
> > That means RafaÅ, you're our lucky winner today! Thanks for playing,
> > Colin.
>
> FYI, I used %zx rather than %zX as couldn't find any instances of it in
> the kernel and I wasn't 100% sure if it was supported or not.

'x' and 'X' are handled nearly identically in lib/vsprintf.c. Don't see
why it wouldn't be.

> linux-next:
>
> $ git grep "%zx" | wc -l
> 161
>
> $ git grep "%zX" | wc -l
> 0

Yay, we're unique!

Seriously though: I don't really care which one is used (though I guess
I'm personally more used to lower-case hex). I just figured the less
churn the better.

Brian