Re: [PATCH] nfsd: use correct format characters

From: Randy Dunlap
Date: Thu Mar 17 2022 - 02:19:05 EST


Hi--

On 3/16/22 14:31, Bill Wendling wrote:
> 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: ClangBuiltLinux/linux#378

Please make the Link: more complete, such as a URL/URI.

> Signed-off-by: Bill Wendling <morbo@xxxxxxxxxx>
> ---
> 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;
>

thanks.
--
~Randy