exit/xtensa: In arch/xtensa/entry.S:Linvalid_mask call make_task_dead

There have historically been two big uses of do_exit.  The first is
it's design use to be the guts of the exit(2) system call.  The second
use is to terminate a task after something catastrophic has happened
like a NULL pointer in kernel code.  The function make_task_dead
has been added to accomidate the second use.

The call to do_exit in Linvalidmask is clearly not a normal userspace
exit.  As failure handling there are two possible ways to go.
If userspace can trigger the issue force_exit_sig should be called.
Otherwise make_task_dead probably from the implementation of die
is appropriate.

Replace the call of do_exit in Linvalidmask with make_task_dead as
I don't know xtensa and especially xtensa assembly language well
enough to do anything else.

Link: https://lkml.kernel.org/r/YdUmN7n4W5YETUhW@zeniv-ca.linux.org.uk
Suggested-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
This commit is contained in:
Eric W. Biederman 2022-01-05 14:59:48 -06:00
parent 751971af2e
commit 85be9ae7b6

View File

@ -1433,7 +1433,7 @@ ENTRY(fast_syscall_spill_registers)
rsync
movi abi_arg0, SIGSEGV
abi_call do_exit
abi_call make_task_dead
/* shouldn't return, so panic */