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
Reviewed-by: Sidhartha Kumar <sidhartha.kumar@oracle.com>
Reviewed-by: Kevin Brodsky <kevin.brodsky@arm.com>
Signed-off-by: Muhammad Usama Anjum <usama.anjum@collabora.com>
---
tools/testing/selftests/mm/Makefile | 1 +
tools/testing/selftests/mm/hmm-tests.c | 5 ++---
tools/testing/selftests/mm/pkey_sighandler_tests.c | 2 +-
tools/testing/selftests/mm/split_huge_page_test.c | 2 +-
4 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/tools/testing/selftests/mm/Makefile b/tools/testing/selftests/mm/Makefile
index 5a1dee50b8987..eaf9312097f7b 100644
--- a/tools/testing/selftests/mm/Makefile
+++ b/tools/testing/selftests/mm/Makefile
@@ -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
diff --git a/tools/testing/selftests/mm/hmm-tests.c b/tools/testing/selftests/mm/hmm-tests.c
index 1325de70f44fc..25045536f4707 100644
--- a/tools/testing/selftests/mm/hmm-tests.c
+++ b/tools/testing/selftests/mm/hmm-tests.c
@@ -2030,11 +2030,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,
diff --git a/tools/testing/selftests/mm/pkey_sighandler_tests.c b/tools/testing/selftests/mm/pkey_sighandler_tests.c
index b5e076a564c95..302fef54049c8 100644
--- a/tools/testing/selftests/mm/pkey_sighandler_tests.c
+++ b/tools/testing/selftests/mm/pkey_sighandler_tests.c
@@ -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;
diff --git a/tools/testing/selftests/mm/split_huge_page_test.c b/tools/testing/selftests/mm/split_huge_page_test.c
index 7731191cc8e9b..743af3c051905 100644
--- a/tools/testing/selftests/mm/split_huge_page_test.c
+++ b/tools/testing/selftests/mm/split_huge_page_test.c
@@ -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;
}
--
2.47.3
On 12 Sep 2025, at 8:30, Muhammad Usama Anjum wrote: > 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 > > Reviewed-by: Sidhartha Kumar <sidhartha.kumar@oracle.com> > Reviewed-by: Kevin Brodsky <kevin.brodsky@arm.com> > Signed-off-by: Muhammad Usama Anjum <usama.anjum@collabora.com> > --- > tools/testing/selftests/mm/Makefile | 1 + > tools/testing/selftests/mm/hmm-tests.c | 5 ++--- > tools/testing/selftests/mm/pkey_sighandler_tests.c | 2 +- > tools/testing/selftests/mm/split_huge_page_test.c | 2 +- > 4 files changed, 5 insertions(+), 5 deletions(-) > LGTM. Reviewed-by: Zi Yan <ziy@nvidia.com> Best Regards, Yan, Zi
On 12.09.25 14:30, Muhammad Usama Anjum wrote: > 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 > > Reviewed-by: Sidhartha Kumar <sidhartha.kumar@oracle.com> > Reviewed-by: Kevin Brodsky <kevin.brodsky@arm.com> > Signed-off-by: Muhammad Usama Anjum <usama.anjum@collabora.com> > --- Acked-by: David Hildenbrand <david@redhat.com> -- Cheers David / dhildenb
© 2016 - 2025 Red Hat, Inc.