[PATCH] D38669: [sanitizer] Don't intercept signal and sigaction on Fuchsia

Petr Hosek via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Oct 8 16:00:54 PDT 2017


phosek updated this revision to Diff 118177.

Repository:
  rL LLVM

https://reviews.llvm.org/D38669

Files:
  lib/sanitizer_common/sanitizer_platform_interceptors.h
  lib/ubsan/ubsan_signals_standalone.cc


Index: lib/ubsan/ubsan_signals_standalone.cc
===================================================================
--- lib/ubsan/ubsan_signals_standalone.cc
+++ lib/ubsan/ubsan_signals_standalone.cc
@@ -24,6 +24,7 @@
 
 namespace __ubsan {
 
+#if !SANITIZER_FUCHSIA
 static void OnStackUnwind(const SignalContext &sig, const void *,
                           BufferedStackTrace *stack) {
   GetStackTraceWithPcBpAndContext(stack, kStackTraceMax, sig.pc, sig.bp,
@@ -34,15 +35,18 @@
 static void UBsanOnDeadlySignal(int signo, void *siginfo, void *context) {
   HandleDeadlySignal(siginfo, context, GetTid(), &OnStackUnwind, nullptr);
 }
+#endif
 
 static bool is_initialized = false;
 
 void InitializeDeadlySignals() {
   if (is_initialized)
     return;
   is_initialized = true;
+#if !SANITIZER_FUCHSIA
   InitializeSignalInterceptors();
   InstallDeadlySignalHandlers(&UBsanOnDeadlySignal);
+#endif
 }
 
 } // namespace __ubsan
Index: lib/sanitizer_common/sanitizer_platform_interceptors.h
===================================================================
--- lib/sanitizer_common/sanitizer_platform_interceptors.h
+++ lib/sanitizer_common/sanitizer_platform_interceptors.h
@@ -389,7 +389,7 @@
 #define SANITIZER_INTERCEPT_MALLOC_USABLE_SIZE (!SI_MAC)
 #define SANITIZER_INTERCEPT_MCHECK_MPROBE SI_LINUX_NOT_ANDROID
 #define SANITIZER_INTERCEPT_WCSCAT SI_POSIX
-#define SANITIZER_INTERCEPT_SIGNAL_AND_SIGACTION (!SI_WINDOWS)
+#define SANITIZER_INTERCEPT_SIGNAL_AND_SIGACTION (!SI_WINDOWS && SI_NOT_FUCHSIA)
 #define SANITIZER_INTERCEPT_BSD_SIGNAL SI_ANDROID
 
 #endif  // #ifndef SANITIZER_PLATFORM_INTERCEPTORS_H


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D38669.118177.patch
Type: text/x-patch
Size: 1619 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20171008/5d2f039d/attachment.bin>


More information about the llvm-commits mailing list