Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(403)

Issue 1099263003: Reland: Introduce sys_sigprocmask and sys_sigaction. (patchset #4 id:80001 of https://codereview.ch… (Closed)

Created:
5 years, 8 months ago by hidehiko
Modified:
5 years, 8 months ago
Reviewers:
mdempsky
CC:
chromium-reviews, rickyz+watch_chromium.org, jln+watch_chromium.org, Mark Seaborn, hamaji, mazda
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Reland: Introduce sys_sigprocmask and sys_sigaction. (patchset #4 id:80001 of https://codereview.chromium.org/1092153005/) The last version was broken for x86_64 DEBUG build. On x86_64, it is necessary to set sa_restorer appropriately, if not specified. What we need in the function is just invoking the rt_sigreturn system call. However, it is special system call which touches user land stack, so that a function prologue will break the program. In RELEASE build, that prologue is gone (including syscall() invocation) by optimization. However, in DEBUG build, there is the prologue. Unfortunately, all CQ and trybot do not run DEBUG tests so that it was not catched. Also, it turned out that MSAN does not work with direct sigaction syscall, unfortunately. (In more precise, it does not work if we *mix* direct sigaction syscall and sigaction() in libc). This version fixes them. TEST=Ran sandbox_linux_tests with DEBUG build locally. Ran msan tests, too. Ran trybots including 64 debug bot and msan ones. BUG=358465 CQ_EXTRA_TRYBOTS=tryserver.chromium.linux:linux_chromium_trusty32_rel,linux_arm,linux_chromium_trusty_dbg,linux_chromium_dbg_ng,linux_chromium_msan_rel_ng Committed: https://crrev.com/a926d0b8cd3d2a3175ef518d8987c7511b083303 Cr-Commit-Position: refs/heads/master@{#326893}

Patch Set 1 #

Total comments: 1

Patch Set 2 : Fix x86_64 debug build test failure and msan bots failure. #

Total comments: 7

Patch Set 3 : Rebase #

Patch Set 4 : Fix GCC build #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+380 lines, -359 lines) Patch
M sandbox/linux/BUILD.gn View 1 2 chunks +6 lines, -4 lines 0 comments Download
M sandbox/linux/sandbox_linux.gypi View 1 chunk +5 lines, -5 lines 0 comments Download
M sandbox/linux/sandbox_linux_test_sources.gypi View 1 chunk +1 line, -0 lines 0 comments Download
M sandbox/linux/seccomp-bpf/die.cc View 2 chunks +6 lines, -1 line 0 comments Download
M sandbox/linux/seccomp-bpf/syscall.h View 1 chunk +1 line, -5 lines 0 comments Download
M sandbox/linux/seccomp-bpf/trap.h View 2 chunks +3 lines, -3 lines 0 comments Download
M sandbox/linux/seccomp-bpf/trap.cc View 1 7 chunks +17 lines, -17 lines 0 comments Download
A sandbox/linux/seccomp-bpf/trap_unittest.cc View 1 chunk +28 lines, -0 lines 0 comments Download
M sandbox/linux/services/credentials.cc View 2 chunks +3 lines, -7 lines 0 comments Download
M sandbox/linux/services/syscall_wrappers.h View 2 chunks +12 lines, -0 lines 0 comments Download
M sandbox/linux/services/syscall_wrappers.cc View 1 2 3 2 chunks +92 lines, -0 lines 1 comment Download
M sandbox/linux/services/syscall_wrappers_unittest.cc View 2 chunks +14 lines, -0 lines 0 comments Download
D sandbox/linux/system_headers/android_arm64_ucontext.h View 1 chunk +0 lines, -29 lines 0 comments Download
D sandbox/linux/system_headers/android_arm_ucontext.h View 1 chunk +0 lines, -32 lines 0 comments Download
D sandbox/linux/system_headers/android_i386_ucontext.h View 1 chunk +0 lines, -79 lines 0 comments Download
D sandbox/linux/system_headers/android_mips_ucontext.h View 1 chunk +0 lines, -51 lines 0 comments Download
D sandbox/linux/system_headers/android_ucontext.h View 1 chunk +0 lines, -28 lines 0 comments Download
D sandbox/linux/system_headers/android_x86_64_ucontext.h View 1 chunk +0 lines, -88 lines 0 comments Download
A + sandbox/linux/system_headers/arm64_linux_ucontext.h View 2 chunks +3 lines, -3 lines 0 comments Download
A sandbox/linux/system_headers/arm_linux_ucontext.h View 1 chunk +67 lines, -0 lines 0 comments Download
A + sandbox/linux/system_headers/i386_linux_ucontext.h View 2 chunks +15 lines, -1 line 0 comments Download
A sandbox/linux/system_headers/linux_signal.h View 1 chunk +73 lines, -0 lines 0 comments Download
A sandbox/linux/system_headers/linux_ucontext.h View 1 chunk +28 lines, -0 lines 0 comments Download
A + sandbox/linux/system_headers/mips_linux_ucontext.h View 2 chunks +3 lines, -3 lines 0 comments Download
A + sandbox/linux/system_headers/x86_64_linux_ucontext.h View 2 chunks +3 lines, -3 lines 0 comments Download

Messages

Total messages: 13 (6 generated)
hidehiko
Hi Matthew, Third trial... Sorry for inconvenience. Now DEBUG build and MSAN passed successfully... PS1 ...
5 years, 8 months ago (2015-04-23 15:59:56 UTC) #5
mdempsky
lgtm https://codereview.chromium.org/1099263003/diff/80001/sandbox/linux/services/syscall_wrappers.cc File sandbox/linux/services/syscall_wrappers.cc (right): https://codereview.chromium.org/1099263003/diff/80001/sandbox/linux/services/syscall_wrappers.cc#newcode151 sandbox/linux/services/syscall_wrappers.cc:151: #if defined(MEMORY_SANITIZER) On 2015/04/23 15:59:56, hidehiko wrote: > ...
5 years, 8 months ago (2015-04-23 19:39:36 UTC) #6
hidehiko
Thank you for review. PTAL, just in case. https://codereview.chromium.org/1099263003/diff/80001/sandbox/linux/services/syscall_wrappers.cc File sandbox/linux/services/syscall_wrappers.cc (right): https://codereview.chromium.org/1099263003/diff/80001/sandbox/linux/services/syscall_wrappers.cc#newcode151 sandbox/linux/services/syscall_wrappers.cc:151: #if ...
5 years, 8 months ago (2015-04-24 17:38:38 UTC) #8
mdempsky
lgtm https://codereview.chromium.org/1099263003/diff/80001/sandbox/linux/services/syscall_wrappers.cc File sandbox/linux/services/syscall_wrappers.cc (right): https://codereview.chromium.org/1099263003/diff/80001/sandbox/linux/services/syscall_wrappers.cc#newcode151 sandbox/linux/services/syscall_wrappers.cc:151: #if defined(MEMORY_SANITIZER) On 2015/04/24 17:38:38, hidehiko wrote: > ...
5 years, 8 months ago (2015-04-24 18:03:02 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1099263003/140001
5 years, 8 months ago (2015-04-24 18:05:46 UTC) #11
commit-bot: I haz the power
Committed patchset #4 (id:140001)
5 years, 8 months ago (2015-04-24 21:55:28 UTC) #12
commit-bot: I haz the power
5 years, 8 months ago (2015-04-24 21:56:48 UTC) #13
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/a926d0b8cd3d2a3175ef518d8987c7511b083303
Cr-Commit-Position: refs/heads/master@{#326893}

Powered by Google App Engine
This is Rietveld 408576698