Re: [PATCH v2] nfsd: use correct format characters

From: Chuck Lever III
Date: Thu Mar 17 2022 - 19:47:25 EST




> On Mar 17, 2022, at 7:45 PM, Thomas Haynes <loghyr@xxxxxxxxxxxxxxx> wrote:
>
>
>
>> On Mar 17, 2022, at 11:42 AM, Bill Wendling <morbo@xxxxxxxxxx> wrote:
>>
>> [You don't often get email from morbo@xxxxxxxxxx. Learn why this is important at http://aka.ms/LearnAboutSenderIdentification.]
>>
>> When compiling with -Wformat, clang emits the following warnings:
>>
>> fs/nfsd/flexfilelayout.c:120:27: warning: format specifies type 'unsigned
>> char' but the argument has type 'int' [-Wformat]
>> "%s.%hhu.%hhu", addr, port >> 8, port & 0xff);
>> ~~~~ ^~~~~~~~~
>> %d
>> fs/nfsd/flexfilelayout.c:120:38: warning: format specifies type 'unsigned
>> char' but the argument has type 'int' [-Wformat]
>> "%s.%hhu.%hhu", addr, port >> 8, port & 0xff);
>> ~~~~ ^~~~~~~~~~~
>> %d
>>
>> The types of these arguments are unconditionally defined, so this patch
>> updates the format character to the correct ones for ints and unsigned
>> ints.
>>
>> Link: https://github.com/ClangBuiltLinux/linux/issues/378
>> Signed-off-by: Bill Wendling <morbo@xxxxxxxxxx>
>> ---
>> v2 - Fixed "Link" to be a valid URL.
>> ---
>> fs/nfsd/flexfilelayout.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/fs/nfsd/flexfilelayout.c b/fs/nfsd/flexfilelayout.c
>> index 2e2f1d5e9f62..070f90ed09b6 100644
>> --- a/fs/nfsd/flexfilelayout.c
>> +++ b/fs/nfsd/flexfilelayout.c
>> @@ -117,7 +117,7 @@ nfsd4_ff_proc_getdeviceinfo(struct super_block *sb, struct svc_rqst *rqstp,
>>
>> da->netaddr.addr_len =
>> snprintf(da->netaddr.addr, FF_ADDR_LEN + 1,
>> - "%s.%hhu.%hhu", addr, port >> 8, port & 0xff);
>> + "%s.%d.%d", addr, port >> 8, port & 0xff);
>>
>> da->tightly_coupled = false;
>>
>> --
>> 2.35.1.723.g4982287a31-goog
>>
>
>
> Reviewed-by: Tom Haynes <loghyr@xxxxxxxxxxxxxxx>

Perfect, thanks!

--
Chuck Lever