Kill off the for_each_process() in __do_SAK(): it really just
wants to do a hangup using SIGKILL.
tty_io.c | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
diff -urpN mm1-2.5.50-1/drivers/char/tty_io.c mm1-2.5.50-2/drivers/char/tty_io.c
--- mm1-2.5.50-1/drivers/char/tty_io.c 2002-12-04 12:49:46.000000000 -0800
+++ mm1-2.5.50-2/drivers/char/tty_io.c 2002-12-04 13:06:20.000000000 -0800
@@ -1838,6 +1838,8 @@ static void __do_SAK(void *arg)
#else
struct tty_struct *tty = arg;
struct task_struct *p;
+ struct list_head *l;
+ struct pid *pid;
int session;
int i;
struct file *filp;
@@ -1850,9 +1852,8 @@ static void __do_SAK(void *arg)
if (tty->driver.flush_buffer)
tty->driver.flush_buffer(tty);
read_lock(&tasklist_lock);
- for_each_process(p) {
- if ((p->tty == tty) ||
- ((session > 0) && (p->session == session))) {
+ for_each_task_pid(session, PIDTYPE_SID, p, l, pid) {
+ if (p->tty == tty || session > 0) {
printk(KERN_NOTICE "SAK: killed process %d"
" (%s): p->session==tty->session\n",
p->pid, p->comm);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sat Dec 07 2002 - 22:00:22 EST