summaryrefslogtreecommitdiffstats
path: root/sandbox
diff options
context:
space:
mode:
authorjln@chromium.org <jln@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-27 20:40:35 +0000
committerjln@chromium.org <jln@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-27 20:40:35 +0000
commit9bfa3813b7ceaa5f73fb0857d0c49deb90de2354 (patch)
treea66280aab922c21f323d9aef12af22b321b24d6e /sandbox
parenta5b1861879ac1f2ec4beab2b1133616e85637ad9 (diff)
downloadchromium_src-9bfa3813b7ceaa5f73fb0857d0c49deb90de2354.zip
chromium_src-9bfa3813b7ceaa5f73fb0857d0c49deb90de2354.tar.gz
chromium_src-9bfa3813b7ceaa5f73fb0857d0c49deb90de2354.tar.bz2
Seccomp-BPF: disable ASAN on SandboxSyscall()
SandboxSyscall uses variadic arguments from the stack and it seems to confuse ASAN. BUG=162925 NOTRY=true Review URL: https://chromiumcodereview.appspot.com/11416209 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169733 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sandbox')
-rw-r--r--sandbox/linux/seccomp-bpf/syscall.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/sandbox/linux/seccomp-bpf/syscall.cc b/sandbox/linux/seccomp-bpf/syscall.cc
index 3f5b263..9471c86 100644
--- a/sandbox/linux/seccomp-bpf/syscall.cc
+++ b/sandbox/linux/seccomp-bpf/syscall.cc
@@ -173,6 +173,11 @@ namespace playground2 {
#endif
); // asm
+#if defined(ADDRESS_SANITIZER)
+// ASAN will complain because we look at 6 arguments on the stack no matter
+// what. This is probably ok for a debugging feature, see crbug.com/162925.
+__attribute__((no_address_safety_analysis))
+#endif
intptr_t SandboxSyscall(int nr, ...) {
// It is most convenient for the caller to pass a variadic list of arguments.
// But this is difficult to handle in assembly code without making