about summary refs log tree commit diff
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2018-03-29 11:42:24 +0200
committerFlorian Weimer <fweimer@redhat.com>2018-03-29 13:01:57 +0200
commit39071a55392d2d2e0b75fb19f2b48d661c4cc682 (patch)
treec598a58d50fe774b647bcbf3baa0c817153731ed
parent55ad82e45c313454de657931898e974a7a036cad (diff)
downloadglibc-39071a55392d2d2e0b75fb19f2b48d661c4cc682.tar.gz
glibc-39071a55392d2d2e0b75fb19f2b48d661c4cc682.tar.xz
glibc-39071a55392d2d2e0b75fb19f2b48d661c4cc682.zip
Linux i386: tst-bz21269 triggers SIGBUS on some kernels
In addition to SIGSEGV and SIGILL, SIGBUS is also a possible signal
generated by the kernel.

(cherry picked from commit 4d76d3e59d31aa690f148fc0c95cc0c581aed3e8)
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/unix/sysv/linux/i386/tst-bz21269.c2
2 files changed, 7 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 1b703df434..536fcf1c4f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2018-03-29  Florian Weimer  <fweimer@redhat.com>
+
+	* sysdeps/unix/sysv/linux/i386/tst-bz21269.c (do_test): Also
+	capture SIGBUS.
+
 2018-03-23  Andrew Senkevich  <andrew.senkevich@intel.com>
 	    Max Horn  <max@quendi.de>
 
diff --git a/sysdeps/unix/sysv/linux/i386/tst-bz21269.c b/sysdeps/unix/sysv/linux/i386/tst-bz21269.c
index 353e36507d..6ee3fc62be 100644
--- a/sysdeps/unix/sysv/linux/i386/tst-bz21269.c
+++ b/sysdeps/unix/sysv/linux/i386/tst-bz21269.c
@@ -177,6 +177,8 @@ do_test (void)
   xsethandler (SIGSEGV, sigsegv_handler, 0);
   /* 32-bit kernels send SIGILL instead of SIGSEGV on IRET faults.  */
   xsethandler (SIGILL, sigsegv_handler, 0);
+  /* Some kernels send SIGBUS instead.  */
+  xsethandler (SIGBUS, sigsegv_handler, 0);
 
   thread = xpthread_create (0, threadproc, 0);