diff options
author | Dmitry Vyukov <dvyukov@google.com> | 2013-10-15 11:31:51 +0000 |
---|---|---|
committer | Dmitry Vyukov <dvyukov@google.com> | 2013-10-15 11:31:51 +0000 |
commit | 0f7a2acb3326a5900d1a1339ebf959b14b372e0d (patch) | |
tree | 5a77aa186006c7764be30822c4ed0dc2d7d47d4c /lib/sanitizer_common/sanitizer_common_syscalls.inc | |
parent | 97f4e082ff0f6aa13ef9e30cd611c1e9246ca7a6 (diff) |
tsan: implement internal syscall-based versions of sigaction/sigprocmask
use them in stoptheworld
fixes applications that intercept sigaction/sigprocmask
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192686 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/sanitizer_common/sanitizer_common_syscalls.inc')
-rw-r--r-- | lib/sanitizer_common/sanitizer_common_syscalls.inc | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/lib/sanitizer_common/sanitizer_common_syscalls.inc b/lib/sanitizer_common/sanitizer_common_syscalls.inc index 942ffc4c9..eef79864f 100644 --- a/lib/sanitizer_common/sanitizer_common_syscalls.inc +++ b/lib/sanitizer_common/sanitizer_common_syscalls.inc @@ -37,6 +37,7 @@ #if SANITIZER_LINUX #include "sanitizer_libc.h" +#include "sanitizer_linux.h" #define PRE_SYSCALL(name) \ SANITIZER_INTERFACE_ATTRIBUTE void __sanitizer_syscall_pre_impl_##name @@ -103,10 +104,6 @@ struct sanitizer_kernel_sockaddr { char sa_data[14]; }; -// Real sigset size is always passed as a syscall argument. -// Declare it "void" to catch sizeof(kernel_sigset_t). -typedef void kernel_sigset_t; - static void kernel_write_iovec(const __sanitizer_iovec *iovec, SIZE_T iovlen, SIZE_T maxlen) { for (SIZE_T i = 0; i < iovlen && maxlen; ++i) { |