Richard reported that some UML processes survive if the UML main process receives a SIGTERM. This issue was caused by a wrongly placed signal(SIGTERM, SIG_DFL) in init_new_thread_signals(). It disabled the UML exit handler accidently for some processes. The correct solution is to disable the fatal handler for all UML helper threads/processes. Such that last_ditch_exit() does not get called multiple times and all processes can exit due to SIGTERM. Reported-and-tested-by: Richard W.M. Jones <rjones@redhat.com> Signed-off-by: Richard Weinberger <richard@nod.at> |
||
|---|---|---|
| .. | ||
| skas | ||
| aio.h | ||
| arch.h | ||
| as-layout.h | ||
| common-offsets.h | ||
| elf_user.h | ||
| frame_kern.h | ||
| init.h | ||
| irq_kern.h | ||
| irq_user.h | ||
| kern.h | ||
| kern_util.h | ||
| longjmp.h | ||
| mem.h | ||
| mem_user.h | ||
| net_kern.h | ||
| net_user.h | ||
| os.h | ||
| ptrace_user.h | ||
| registers.h | ||
| sigio.h | ||
| skas_ptrace.h | ||
| um_malloc.h | ||
| user.h | ||