[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <f6fef672-a657-451c-b60e-d9786f743cc4@bootlin.com>
Date: Fri, 16 Jan 2026 11:13:03 +0100
From: Maxime Chevallier <maxime.chevallier@...tlin.com>
To: "Christophe Leroy (CS GROUP)" <chleroy@...nel.org>,
"David S. Miller" <davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Simon Horman <horms@...nel.org>, Shuah Khan <shuah@...nel.org>
Cc: netdev@...r.kernel.org, linux-kselftest@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH net-next v2] selftests: net: csum: Fix printk format in
recv_get_packet_csum_status()
Hi Christophe
On 16/01/2026 10:48, Christophe Leroy (CS GROUP) wrote:
> Following warning is encountered when building selftests on powerpc/32.
>
> CC csum
> csum.c: In function 'recv_get_packet_csum_status':
> csum.c:710:50: warning: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'size_t' {aka 'unsigned int'} [-Wformat=]
> 710 | error(1, 0, "cmsg: len=%lu expected=%lu",
> | ~~^
> | |
> | long unsigned int
> | %u
> 711 | cm->cmsg_len, CMSG_LEN(sizeof(struct tpacket_auxdata)));
> | ~~~~~~~~~~~~
> | |
> | size_t {aka unsigned int}
> csum.c:710:63: warning: format '%lu' expects argument of type 'long unsigned int', but argument 5 has type 'unsigned int' [-Wformat=]
> 710 | error(1, 0, "cmsg: len=%lu expected=%lu",
> | ~~^
> | |
> | long unsigned int
> | %u
>
> cm->cmsg_len has type __kernel_size_t and CMSG() macro has the type
> returned by sizeof() which is size_t.
>
> size_t is 'unsigned int' on some platforms and 'unsigned long' on
> other ones so use %zu instead of %lu.
>
> This fixes commit 91a7de85600d ("selftests/net: add csum offload test").
>
> Signed-off-by: Christophe Leroy (CS GROUP) <chleroy@...nel.org>
Reviewed-by: Maxime Chevallier <maxime.chevallier@...tlin.com>
Maxime
> ---
> v2: Removed use %zu instead of %u and removed Fixes tag
> ---
> tools/testing/selftests/net/lib/csum.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/net/lib/csum.c b/tools/testing/selftests/net/lib/csum.c
> index 27437590eeb53..e28884ce3ab39 100644
> --- a/tools/testing/selftests/net/lib/csum.c
> +++ b/tools/testing/selftests/net/lib/csum.c
> @@ -707,7 +707,7 @@ static uint32_t recv_get_packet_csum_status(struct msghdr *msg)
> cm->cmsg_level, cm->cmsg_type);
>
> if (cm->cmsg_len != CMSG_LEN(sizeof(struct tpacket_auxdata)))
> - error(1, 0, "cmsg: len=%lu expected=%lu",
> + error(1, 0, "cmsg: len=%zu expected=%zu",
> cm->cmsg_len, CMSG_LEN(sizeof(struct tpacket_auxdata)));
>
> aux = (void *)CMSG_DATA(cm);
Powered by blists - more mailing lists