diff options
author | jln <jln@chromium.org> | 2014-09-11 16:50:08 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-09-12 00:19:19 +0000 |
commit | b53755f4a85f9564400d8835ef0a7a0ada56b67f (patch) | |
tree | 83cf7a4f02caf33d42ab964e11f506fa88c33ca3 /sandbox | |
parent | f3fd0560fa29612c3dbb563056f9c0601afb913a (diff) | |
download | chromium_src-b53755f4a85f9564400d8835ef0a7a0ada56b67f.zip chromium_src-b53755f4a85f9564400d8835ef0a7a0ada56b67f.tar.gz chromium_src-b53755f4a85f9564400d8835ef0a7a0ada56b67f.tar.bz2 |
Enable futex tests on Android.
Also fix the type of death messages expected in these tests.
BUG=398611
Review URL: https://codereview.chromium.org/563913002
Cr-Commit-Position: refs/heads/master@{#294497}
Diffstat (limited to 'sandbox')
-rw-r--r-- | sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc | 9 | ||||
-rw-r--r-- | sandbox/linux/services/android_futex.h | 8 |
2 files changed, 12 insertions, 5 deletions
diff --git a/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc b/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc index f97efb8..f55df03 100644 --- a/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc +++ b/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc @@ -28,6 +28,7 @@ #include "sandbox/linux/seccomp-bpf/bpf_tests.h" #include "sandbox/linux/seccomp-bpf/sandbox_bpf.h" #include "sandbox/linux/seccomp-bpf/syscall.h" +#include "sandbox/linux/services/android_futex.h" #include "sandbox/linux/services/linux_syscalls.h" #include "sandbox/linux/services/thread_helpers.h" #include "sandbox/linux/tests/unit_tests.h" @@ -256,10 +257,9 @@ TEST_BASELINE_SIGSYS(__NR_inotify_init); TEST_BASELINE_SIGSYS(__NR_vserver); #endif -#if !defined(OS_ANDROID) BPF_DEATH_TEST_C(BaselinePolicy, FutexWithRequeuePriorityInheritence, - DEATH_MESSAGE(GetFutexErrorMessageContentForTests()), + DEATH_SEGV_MESSAGE(GetFutexErrorMessageContentForTests()), BaselinePolicy) { syscall(__NR_futex, NULL, FUTEX_CMP_REQUEUE_PI, 0, NULL, NULL, 0); _exit(1); @@ -267,7 +267,7 @@ BPF_DEATH_TEST_C(BaselinePolicy, BPF_DEATH_TEST_C(BaselinePolicy, FutexWithRequeuePriorityInheritencePrivate, - DEATH_MESSAGE(GetFutexErrorMessageContentForTests()), + DEATH_SEGV_MESSAGE(GetFutexErrorMessageContentForTests()), BaselinePolicy) { syscall(__NR_futex, NULL, FUTEX_CMP_REQUEUE_PI_PRIVATE, 0, NULL, NULL, 0); _exit(1); @@ -275,12 +275,11 @@ BPF_DEATH_TEST_C(BaselinePolicy, BPF_DEATH_TEST_C(BaselinePolicy, FutexWithUnlockPIPrivate, - DEATH_MESSAGE(GetFutexErrorMessageContentForTests()), + DEATH_SEGV_MESSAGE(GetFutexErrorMessageContentForTests()), BaselinePolicy) { syscall(__NR_futex, NULL, FUTEX_UNLOCK_PI_PRIVATE, 0, NULL, NULL, 0); _exit(1); } -#endif // !defined(OS_ANDROID) BPF_TEST_C(BaselinePolicy, PrctlDumpable, BaselinePolicy) { const int is_dumpable = prctl(PR_GET_DUMPABLE, 0, 0, 0, 0); diff --git a/sandbox/linux/services/android_futex.h b/sandbox/linux/services/android_futex.h index a2be661..571f5d2 100644 --- a/sandbox/linux/services/android_futex.h +++ b/sandbox/linux/services/android_futex.h @@ -69,4 +69,12 @@ #define FUTEX_CMD_MASK ~(FUTEX_PRIVATE_FLAG | FUTEX_CLOCK_REALTIME) #endif +#if !defined(FUTEX_CMP_REQUEUE_PI_PRIVATE) +#define FUTEX_CMP_REQUEUE_PI_PRIVATE (FUTEX_CMP_REQUEUE_PI | FUTEX_PRIVATE_FLAG) +#endif + +#if !defined(FUTEX_UNLOCK_PI_PRIVATE) +#define FUTEX_UNLOCK_PI_PRIVATE (FUTEX_UNLOCK_PI | FUTEX_PRIVATE_FLAG) +#endif + #endif // SANDBOX_LINUX_SERVICES_ANDROID_FUTEX_H_ |