diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2021-09-03 10:26:05 -0500 |
---|---|---|
committer | Eric W. Biederman <ebiederm@xmission.com> | 2021-10-06 11:27:55 -0500 |
commit | 7e3c4fb7fc19bcf20657de3edb718ec1b26c7df3 (patch) | |
tree | 4105e71b67facde85813e97980122b6df56f0b34 /kernel | |
parent | 4f627af8e6068892cafe031df6c14e8a0aaaa426 (diff) | |
download | linux-7e3c4fb7fc19bcf20657de3edb718ec1b26c7df3.tar.gz linux-7e3c4fb7fc19bcf20657de3edb718ec1b26c7df3.tar.bz2 linux-7e3c4fb7fc19bcf20657de3edb718ec1b26c7df3.zip |
exec: Check for a pending fatal signal instead of core_state
Prevent exec continuing when a fatal signal is pending by replacing
mmap_read_lock with mmap_read_lock_killable. This is always the right
thing to do as userspace will never observe an exec complete when
there is a fatal signal pending.
With that change it becomes unnecessary to explicitly test for a core
dump in progress. In coredump_wait zap_threads arranges under
mmap_write_lock for all tasks that use a mm to also have SIGKILL
pending, which means mmap_read_lock_killable will always return -EINTR
when old_mm->core_state is present.
Link: https://lkml.kernel.org/r/87fstux27w.fsf@disp2133
Reviewed-by: Kees Cook <keescook@chromium.org>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Diffstat (limited to 'kernel')
0 files changed, 0 insertions, 0 deletions