Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

selftests/mm: add -Wunreachable-code and fix warnings

Patch series "selftests/mm: Add -Wunreachable-code and fix warnings".

Add -Wunreachable-code to selftests and remove dead code from generated
warnings.


This patch (of 2):

Enable -Wunreachable-code flag to catch dead code and fix them.

1. Remove the dead code and write a comment instead:
hmm-tests.c:2033:3: warning: code will never be executed
[-Wunreachable-code]
perror("Should not reach this\n");
^~~~~~

2. ksft_exit_fail_msg() calls exit(). So cleanup isn't done. Replace it
with ksft_print_msg().
split_huge_page_test.c:301:3: warning: code will never be executed
[-Wunreachable-code]
goto cleanup;
^~~~~~~~~~~~

3. Remove duplicate inline.
pkey_sighandler_tests.c:44:15: warning: duplicate 'inline' declaration
specifier [-Wduplicate-decl-specifier]
static inline __always_inline

Link: https://lkml.kernel.org/r/20250912123025.1271051-1-usama.anjum@collabora.com
Link: https://lkml.kernel.org/r/20250912123025.1271051-2-usama.anjum@collabora.com
Signed-off-by: Muhammad Usama Anjum <usama.anjum@collabora.com>
Reviewed-by: Sidhartha Kumar <sidhartha.kumar@oracle.com>
Reviewed-by: Kevin Brodsky <kevin.brodsky@arm.com>
Acked-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Zi Yan <ziy@nvidia.com>
Cc: Baolin Wang <baolin.wang@linux.alibaba.com>
Cc: Barry Song <baohua@kernel.org>
Cc: Dev Jain <dev.jain@arm.com>
Cc: Jason Gunthorpe <jgg@ziepe.ca>
Cc: Lance Yang <lance.yang@linux.dev>
Cc: Leon Romanovsky <leon@kernel.org>
Cc: Liam Howlett <liam.howlett@oracle.com>
Cc: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Cc: Mariano Pache <npache@redhat.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Ryan Roberts <ryan.roberts@arm.com>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

authored by

Muhammad Usama Anjum and committed by
Andrew Morton
3d5022a0 eea5706c

+5 -5
+1
tools/testing/selftests/mm/Makefile
··· 34 34 MAKEFLAGS += --no-builtin-rules 35 35 36 36 CFLAGS = -Wall -O2 -I $(top_srcdir) $(EXTRA_CFLAGS) $(KHDR_INCLUDES) $(TOOLS_INCLUDES) 37 + CFLAGS += -Wunreachable-code 37 38 LDLIBS = -lrt -lpthread -lm 38 39 39 40 # Some distributions (such as Ubuntu) configure GCC so that _FORTIFY_SOURCE is
+2 -3
tools/testing/selftests/mm/hmm-tests.c
··· 2027 2027 if (pid == -1) 2028 2028 ASSERT_EQ(pid, 0); 2029 2029 if (!pid) { 2030 - /* Child process waitd for SIGTERM from the parent. */ 2030 + /* Child process waits for SIGTERM from the parent. */ 2031 2031 while (1) { 2032 2032 } 2033 - perror("Should not reach this\n"); 2034 - exit(0); 2033 + /* Should not reach this */ 2035 2034 } 2036 2035 /* Parent process writes to COW pages(s) and gets a 2037 2036 * new copy in system. In case of device private pages,
+1 -1
tools/testing/selftests/mm/pkey_sighandler_tests.c
··· 41 41 * syscall will attempt to access the PLT in order to call a library function 42 42 * which is protected by MPK 0 which we don't have access to. 43 43 */ 44 - static inline __always_inline 44 + static __always_inline 45 45 long syscall_raw(long n, long a1, long a2, long a3, long a4, long a5, long a6) 46 46 { 47 47 unsigned long ret;
+1 -1
tools/testing/selftests/mm/split_huge_page_test.c
··· 510 510 511 511 status = snprintf(testfile, INPUT_MAX, "%s/thp_file", tmpfs_loc); 512 512 if (status >= INPUT_MAX) { 513 - ksft_exit_fail_msg("Fail to create file-backed THP split testing file\n"); 513 + ksft_print_msg("Fail to create file-backed THP split testing file\n"); 514 514 goto cleanup; 515 515 } 516 516