Module Name: src Committed By: rin Date: Wed Sep 4 03:33:29 UTC 2024
Modified Files: src/tests/lib/libc/gen: t_siginfo.c Log Message: t_siginfo:adraln: Brush up skip message for x86 Note that: 1. No data address is reported back for alignment check exception, as per Intel SDM (June 2024). 2. Kernel sets faulting PC to si_addr. 3. 2. is compliant to siginfo(2), at least: > For SIGILL, SIGFPE, SIGBUS and SIGSEGV ... si_addr contains > the address of the faulting instruction or data and ... 4. IEEE Std 1003.1-2024 does not require si_addr for SIGBUS. For SIGILL and SIGSEGV, e.g., it is required (SHALL) to store faulting PC and data address, respectively, on the other hand. To generate a diff of this commit: cvs rdiff -u -r1.54 -r1.55 src/tests/lib/libc/gen/t_siginfo.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/tests/lib/libc/gen/t_siginfo.c diff -u src/tests/lib/libc/gen/t_siginfo.c:1.54 src/tests/lib/libc/gen/t_siginfo.c:1.55 --- src/tests/lib/libc/gen/t_siginfo.c:1.54 Wed Sep 4 02:20:49 2024 +++ src/tests/lib/libc/gen/t_siginfo.c Wed Sep 4 03:33:29 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: t_siginfo.c,v 1.54 2024/09/04 02:20:49 rin Exp $ */ +/* $NetBSD: t_siginfo.c,v 1.55 2024/09/04 03:33:29 rin Exp $ */ /*- * Copyright (c) 2010 The NetBSD Foundation, Inc. @@ -442,8 +442,9 @@ sigbus_action(int signo, siginfo_t *info ATF_REQUIRE_EQ(info->si_code, BUS_ADRALN); #if defined(__i386__) || defined(__x86_64__) - atf_tc_skip("x86 architecture does not correctly " - "report the address where the unaligned access occurred"); + atf_tc_skip("Data address is not provided for " + "x86 alignment check exception, and NetBSD/x86 reports " + "faulting PC instead"); #endif ATF_REQUIRE_EQ(info->si_addr, (volatile void *)addr);