Re: [PATCH] x86/vdso: Use proper modifier for len's printf in extract

Jiri Slaby
2021-03-04T05:20:06Z

On 03. 03. 21, 19:36, Borislav Petkov wrote:
> On Wed, Mar 03, 2021 at 07:43:57AM +0100, Jiri Slaby wrote:
>> Commit 8382c668ce4f ("x86/vdso: Add support for exception fixup in vDSO
>> functions") added a printf of len which is size_t. Compilers now
>> complain on 32b:
>> 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'}
>>
>
> I know it is obvious but how do you trigger this?
>
> A 32-bit allmodconfig with both debian's gcc-10 and leap15's gcc-7 don't
> trigger that warning. Which might answer your question why I haven't
> caught it yet. :-)

It was caught by suse's build bot while merging the stable branch. But
it can be also seen in OBS in Kernel:stable:

https://build.opensuse.org/public/build/Kernel:stable/standard/i586/kernel-pae/_log
https://build.opensuse.org/public/build/Kernel:stable/standard/i586/kernel-vanilla/_log

It's built with gcc 10 from tumbleweed and it's a standard config from
kerncvs:
https://github.com/openSUSE/kernel-source/blob/stable/config/i386/pae

thanks,
--
js
suse labs