Commit d21918e5 authored by Eric W. Biederman's avatar Eric W. Biederman
Browse files

signal/seccomp: Dump core when there is only one live thread



Replace get_nr_threads with atomic_read(&current->signal->live) as
that is a more accurate number that is decremented sooner.

Acked-by: default avatarKees Cook <keescook@chromium.org>
Link: https://lkml.kernel.org/r/87lf6z6qbd.fsf_-_@disp2133


Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
parent 307d522f
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1264,7 +1264,7 @@ static int __seccomp_filter(int this_syscall, const struct seccomp_data *sd,
		seccomp_log(this_syscall, SIGSYS, action, true);
		/* Dump core only if this is the last remaining thread. */
		if (action != SECCOMP_RET_KILL_THREAD ||
		    get_nr_threads(current) == 1) {
		    (atomic_read(&current->signal->live) == 1)) {
			/* Show the original registers in the dump. */
			syscall_rollback(current, current_pt_regs());
			/* Trigger a coredump with SIGSYS */