]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
selftests/mm: add -Wunreachable-code and fix warnings
authorMuhammad Usama Anjum <usama.anjum@collabora.com>
Fri, 12 Sep 2025 12:30:21 +0000 (17:30 +0500)
committerAndrew Morton <akpm@linux-foundation.org>
Sun, 21 Sep 2025 21:22:34 +0000 (14:22 -0700)
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>
tools/testing/selftests/mm/Makefile
tools/testing/selftests/mm/hmm-tests.c
tools/testing/selftests/mm/pkey_sighandler_tests.c
tools/testing/selftests/mm/split_huge_page_test.c

index 5a1dee50b8987683294358ba246cc7de8daddc35..eaf9312097f7babcf48131b9dff66b3d68bc3781 100644 (file)
@@ -34,6 +34,7 @@ endif
 MAKEFLAGS += --no-builtin-rules
 
 CFLAGS = -Wall -O2 -I $(top_srcdir) $(EXTRA_CFLAGS) $(KHDR_INCLUDES) $(TOOLS_INCLUDES)
+CFLAGS += -Wunreachable-code
 LDLIBS = -lrt -lpthread -lm
 
 # Some distributions (such as Ubuntu) configure GCC so that _FORTIFY_SOURCE is
index 141bf63cbe05ecf8bef3bc88ee313d44863e39df..15aadaf24a667bc774a5282bf4fa166e062042de 100644 (file)
@@ -2027,11 +2027,10 @@ TEST_F(hmm, hmm_cow_in_device)
        if (pid == -1)
                ASSERT_EQ(pid, 0);
        if (!pid) {
-               /* Child process waitd for SIGTERM from the parent. */
+               /* Child process waits for SIGTERM from the parent. */
                while (1) {
                }
-               perror("Should not reach this\n");
-               exit(0);
+               /* Should not reach this */
        }
        /* Parent process writes to COW pages(s) and gets a
         * new copy in system. In case of device private pages,
index b5e076a564c952fc198335a66776f170df10e840..302fef54049c87116583bae45e086f2731326964 100644 (file)
@@ -41,7 +41,7 @@ static siginfo_t siginfo = {0};
  * syscall will attempt to access the PLT in order to call a library function
  * which is protected by MPK 0 which we don't have access to.
  */
-static inline __always_inline
+static __always_inline
 long syscall_raw(long n, long a1, long a2, long a3, long a4, long a5, long a6)
 {
        unsigned long ret;
index 7731191cc8e9becddf3b4c63ab38d1a902e2b3b7..743af3c051905b01c4f136f96e1b2fd7f18bb740 100644 (file)
@@ -510,7 +510,7 @@ static void split_file_backed_thp(int order)
 
        status = snprintf(testfile, INPUT_MAX, "%s/thp_file", tmpfs_loc);
        if (status >= INPUT_MAX) {
-               ksft_exit_fail_msg("Fail to create file-backed THP split testing file\n");
+               ksft_print_msg("Fail to create file-backed THP split testing file\n");
                goto cleanup;
        }