Skip to content

Commit 3fc66a1

Browse files
emabrauner
authored andcommitted
kselftest/coredump: reintroduce null pointer dereference
Commit 673a55c replaced the null pointer dereference used in crashing_child() with __builtin_trap to address the following LLVM warnings: coredump_test_helpers.c:59:6: warning: indirection of non-volatile null pointer will be deleted, not trap [-Wnull-dereference] coredump_test_helpers.c:59:6: note: consider using __builtin_trap() or qualifying pointer with 'volatile' All coredump tests expect crashing_child() to result in a SIGSEGV. However, the behavior of __builtin_trap is architecture-dependent. On x86 it yields SIGILL, on aarch64 SIGTRAP. Given that neither of those signals are SIGSEGV, both coredump_socket_test and coredump_socket_protocol_test are currently failing: get_pidfd_info: mask=0xd7, coredump_mask=0x5, coredump_signal=5 socket_coredump_signal_sigsegv: coredump_signal=5, expected SIGSEGV=11 Qualify the pointer with volatile instead of calling __builtin_trap to fix the tests. Signed-off-by: Emanuele Rocca <emanuele.rocca@arm.com> Link: https://patch.msgid.link/ab2kI0PI_Vk6bU88@NH27D9T0LF Reviewed-by: Mark Brown <broonie@kernel.org> Signed-off-by: Christian Brauner <brauner@kernel.org>
1 parent a2900f5 commit 3fc66a1

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

tools/testing/selftests/coredump/coredump_test_helpers.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ void crashing_child(void)
5656
pthread_create(&thread, NULL, do_nothing, NULL);
5757

5858
/* crash on purpose */
59-
__builtin_trap();
59+
i = *(volatile int *)NULL;
6060
}
6161

6262
int create_detached_tmpfs(void)

0 commit comments

Comments
 (0)