Re: [PATCH] x86: vdso: fix printf() format warnings in vdso2c.h

From: Jarkko Sakkinen
Date: Fri Feb 12 2021 - 05:57:36 EST


On Mon, Feb 08, 2021 at 05:23:05PM -0800, Randy Dunlap wrote:
> Use %zu instead of %lu for size_t to prevent w printf()
> format warnings in vdso2c.h
>
> HOSTCC arch/x86/entry/vdso/vdso2c
> In file included from ../arch/x86/entry/vdso/vdso2c.c:162:
> ../arch/x86/entry/vdso/vdso2c.h: In function 'extract64':
> ../arch/x86/entry/vdso/vdso2c.h:38:52: warning: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'size_t' {aka 'unsigned int'} [-Wformat=]
> 38 | fprintf(outfile, "static const unsigned char %s[%lu] = {", name, len);
> | ~~^ ~~~
> In file included from ../arch/x86/entry/vdso/vdso2c.c:166:
> ../arch/x86/entry/vdso/vdso2c.h: In function 'extract32':
> ../arch/x86/entry/vdso/vdso2c.h:38:52: warning: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'size_t' {aka 'unsigned int'} [-Wformat=]
> 38 | fprintf(outfile, "static const unsigned char %s[%lu] = {", name, len);
> | ~~^ ~~~
>
> Fixes: 8382c668ce4f ("x86/vdso: Add support for exception fixup in vDSO functions")
> Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
> Cc: Sean Christopherson <seanjc@xxxxxxxxxx>
> Cc: Jarkko Sakkinen <jarkko@xxxxxxxxxx>
> Cc: Borislav Petkov <bp@xxxxxxx>
> Cc: x86@xxxxxxxxxx

Just a *question*: should SOB be the last? Seeing this 2nd time today, and
just not used to it. That's why asking.

Anyway, thank you.

Reviewed-by: Jarkko Sakkinen <jarkko@xxxxxxxxxx>

> ---
> arch/x86/entry/vdso/vdso2c.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- lnx-511-rc7.orig/arch/x86/entry/vdso/vdso2c.h
> +++ lnx-511-rc7/arch/x86/entry/vdso/vdso2c.h
> @@ -35,7 +35,7 @@ static void BITSFUNC(extract)(const unsi
> if (offset + len > data_len)
> fail("section to extract overruns input data");
>
> - fprintf(outfile, "static const unsigned char %s[%lu] = {", name, len);
> + fprintf(outfile, "static const unsigned char %s[%zu] = {", name, len);
> BITSFUNC(copy)(outfile, data + offset, len);
> fprintf(outfile, "\n};\n\n");
> }
>

/Jarkko