diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2006-04-13 06:49:07 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-04-13 14:59:12 -0400 |
commit | 20ac94378de59d61dc39f10ed5530485e4ac8c07 (patch) | |
tree | 80de96cdd506cf73e088b2be95079a3ff79c60a7 /drivers/char/tty_io.c | |
parent | 907d91d708d9999bec0185d630062576ac4181a7 (diff) |
[PATCH] do_SAK: Don't recursively take the tasklist_lock
By calling send_sig do_SAK is recursively taking the
tasklist_lock, which is silly.
In addition I just audited the kernel and this was the only
place where tasklist_lock is taken inside of task_lock.
So this one line change is a general worthwhile cleanup and
it increases our options on how to fix the ptrace_attach races.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/char/tty_io.c')
-rw-r--r-- | drivers/char/tty_io.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/char/tty_io.c b/drivers/char/tty_io.c index f70a47eadb52..841f0bd3eaaf 100644 --- a/drivers/char/tty_io.c +++ b/drivers/char/tty_io.c | |||
@@ -2734,7 +2734,7 @@ static void __do_SAK(void *arg) | |||
2734 | printk(KERN_NOTICE "SAK: killed process %d" | 2734 | printk(KERN_NOTICE "SAK: killed process %d" |
2735 | " (%s): fd#%d opened to the tty\n", | 2735 | " (%s): fd#%d opened to the tty\n", |
2736 | p->pid, p->comm, i); | 2736 | p->pid, p->comm, i); |
2737 | send_sig(SIGKILL, p, 1); | 2737 | force_sig(SIGKILL, p); |
2738 | break; | 2738 | break; |
2739 | } | 2739 | } |
2740 | } | 2740 | } |