]> git.baikalelectronics.ru Git - kernel.git/commit
signal/x86: In emulate_vsyscall force a signal instead of calling do_exit
authorEric W. Biederman <ebiederm@xmission.com>
Wed, 20 Oct 2021 17:44:03 +0000 (12:44 -0500)
committerEric W. Biederman <ebiederm@xmission.com>
Fri, 29 Oct 2021 19:31:34 +0000 (14:31 -0500)
commiteed3b85106a043f9ffbef47f30544773be1784b7
tree1a50b133a243eb6ea86130cdae4de5aa868869b0
parente98d91d2e62995b9bb909fdb08405086e195b568
signal/x86: In emulate_vsyscall force a signal instead of calling do_exit

Directly calling do_exit with a signal number has the problem that
all of the side effects of the signal don't happen, such as
killing all of the threads of a process instead of just the
calling thread.

So replace do_exit(SIGSYS) with force_fatal_sig(SIGSYS) which
causes the signal handling to take it's normal path and work
as expected.

Cc: Andy Lutomirski <luto@kernel.org>
Link: https://lkml.kernel.org/r/20211020174406.17889-17-ebiederm@xmission.com
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
arch/x86/entry/vsyscall/vsyscall_64.c