Thread (33 messages) 33 messages, 5 authors, 2017-06-07

[PATCH 05/26] exit: Remove the pointless clearing of SIGPENDING in __exit_signal

From: Eric W. Biederman <hidden>
Date: 2017-06-06 19:13:24
Also in: lkml
Subsystem: the rest · Maintainer: Linus Torvalds

Handling of signals does not happen once do_exit is called as a
process never again exits from the kernel.  So remove this ancient hold
over from something else.

Furthermore this is TIF_SIGPENDING on a zombie.  Which will never
be scheduled on a cpu again.

Setting sigpending=0 was silly in 2.4 when exit_sighand did it and was
called from do_exit.  When exit_sighand started being called from
release_task the code went from silly to completely pointless.

History  tree: https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git/
Fixes: 6dfc88977e42 ("[PATCH] shared thread signals")
Signed-off-by: Eric W. Biederman <ebiederm-aS9lmoZGLiVWk0Htik3J/w@public.gmane.org>
---
 kernel/exit.c | 1 -
 1 file changed, 1 deletion(-)
diff --git a/kernel/exit.c b/kernel/exit.c
index 8926cdd132f2..c3de7ace243c 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -164,7 +164,6 @@ static void __exit_signal(struct task_struct *tsk)
 	spin_unlock(&sighand->siglock);
 
 	__cleanup_sighand(sighand);
-	clear_tsk_thread_flag(tsk, TIF_SIGPENDING);
 	if (group_dead) {
 		flush_sigqueue(&sig->shared_pending);
 		tty_kref_put(tty);
-- 
2.10.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help