]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
selftests/net: Replace non-standard __WORDSIZE with sizeof(long) * 8
authorWake Liu <wakel@google.com>
Thu, 7 Aug 2025 08:09:32 +0000 (16:09 +0800)
committerJakub Kicinski <kuba@kernel.org>
Tue, 12 Aug 2025 03:08:32 +0000 (20:08 -0700)
The `__WORDSIZE` macro, defined in the non-standard `<bits/wordsize.h>`
header, is a GNU extension and not universally available with all
toolchains, such as Clang when used with musl libc.

This can lead to build failures in environments where this header is
missing.

The intention of the code is to determine the bit width of a C `long`.
Replace the non-portable `__WORDSIZE` with the standard and portable
`sizeof(long) * 8` expression to achieve the same result.

This change also removes the inclusion of the now-unused
`<bits/wordsize.h>` header.

Signed-off-by: Wake Liu <wakel@google.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/net/psock_tpacket.c

index 221270cee3eaa24792adcd8fed808621f5fbe0ab..0dd909e325d936cbfa4dea429962b6f18f21a302 100644 (file)
@@ -33,7 +33,6 @@
 #include <ctype.h>
 #include <fcntl.h>
 #include <unistd.h>
-#include <bits/wordsize.h>
 #include <net/ethernet.h>
 #include <netinet/ip.h>
 #include <arpa/inet.h>
@@ -785,7 +784,7 @@ static int test_kernel_bit_width(void)
 
 static int test_user_bit_width(void)
 {
-       return __WORDSIZE;
+       return sizeof(long) * 8;
 }
 
 static const char *tpacket_str[] = {