[PATCH] D32457: [asan] Don't reset non-default user handler if allow_user_signal_handler is true.

Evgenii Stepanov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri May 26 13:53:37 PDT 2017


eugenis added inline comments.


================
Comment at: test/asan/TestCases/Linux/preinstalled_signal.cc:36
+  void (*restorer)();
+  sigset_t mask;
+};
----------------
AFAIK sigset_t and kernel_sigset_t may be different in size.
Look in sanitizer_platform_limits_posix.h


================
Comment at: test/asan/TestCases/Linux/preinstalled_signal.cc:41
+extern "C" void restorer();
+asm("restorer:mov $15,%rax\nsyscall");
+#endif
----------------
Maybe limit the test to x86/x86_64? There are just too many things that can go wrong on different platforms.


================
Comment at: test/asan/TestCases/Linux/preinstalled_signal.cc:47
+#if defined(__x86_64__)
+    act->flags |= 0x04000000;
+    act->restorer = &restorer;
----------------
is that SA_RESTORER?


https://reviews.llvm.org/D32457





More information about the llvm-commits mailing list