On Wed, Dec 08, 2021 at 02:25:24PM -0600, Eric W. Biederman wrote: > There are 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. > > Add a function make_task_dead that is initialy exactly the same as > do_exit to cover the cases where do_exit is called to handle > catastrophic failure. In time this can probably be reduced to just a > light wrapper around do_task_dead. For now keep it exactly the same so > that there will be no behavioral differences introducing this new > concept. > > Replace all of the uses of do_exit that use it for catastraphic > task cleanup with make_task_dead to make it clear what the code > is doing. > > As part of this rename rewind_stack_do_exit > rewind_stack_and_make_dead. Umm... What about .Linvalid_mask: in arch/xtensa/kernel/entry.S? That's an obvious case for your make_task_dead().