[PATCH] selftests/mm: Fix -Wnull-dereference on Clang
Kevin Brodsky
kevin.brodsky at arm.com
Wed Dec 18 07:36:15 PST 2024
Dereferencing a null pointer on Clang is not a good idea - it will
entirely optimise out the dereference. Make the pointer volatile to
force the access (and fault).
Reported-by: kernel test robot <lkp at intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202412140850.4TW4YBqc-lkp@intel.com/
Signed-off-by: Kevin Brodsky <kevin.brodsky at arm.com>
---
Hi Andrew,
Another fixup for an issue reported by the LKP CI (building with Clang
instead of GCC). This should be squashed into the patch I'm replying to:
"selftests/mm: Fix -Warray-bounds warnings in pkey_sighandler_tests"
Cheers,
- Kevin
Cc: aruna.ramakrishna at oracle.com
Cc: catalin.marinas at arm.com
Cc: dave.hansen at linux.intel.com
Cc: joey.gouly at arm.com
Cc: keith.lucas at oracle.com
Cc: ryan.roberts at arm.com
Cc: shuah at kernel.org
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kselftest at vger.kernel.org
Cc: linux-mm at kvack.org
Cc: x86 at kernel.org
---
tools/testing/selftests/mm/pkey_sighandler_tests.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/testing/selftests/mm/pkey_sighandler_tests.c b/tools/testing/selftests/mm/pkey_sighandler_tests.c
index 17bbfcd552c6..1ac8c8809880 100644
--- a/tools/testing/selftests/mm/pkey_sighandler_tests.c
+++ b/tools/testing/selftests/mm/pkey_sighandler_tests.c
@@ -161,7 +161,7 @@ static void *thread_segv_with_pkey0_disabled(void *ptr)
__write_pkey_reg(pkey_reg_restrictive_default());
/* Segfault (with SEGV_MAPERR) */
- *(int *)NULL = 1;
+ *(volatile int *)NULL = 1;
return NULL;
}
@@ -192,7 +192,7 @@ static void *thread_segv_maperr_ptr(void *ptr)
__write_pkey_reg(pkey_reg);
/* Segfault */
- *(int *)NULL = 1;
+ *(volatile int *)NULL = 1;
syscall_raw(SYS_exit, 0, 0, 0, 0, 0, 0);
return NULL;
}
--
2.47.0
More information about the linux-arm-kernel
mailing list