diff options
author | Alan Cox <alan@lxorguk.ukuu.org.uk> | 2006-09-29 05:00:57 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-09-29 12:18:18 -0400 |
commit | de2a84f2be8ed8a166f13d6aa2ae474541172bb2 (patch) | |
tree | 1c6e236c8fb87ec37d4e7cce126e42361156e471 | |
parent | 074a5dde04abc66eea30368c74913d83b1a410f9 (diff) |
[PATCH] solaris emulation: incorrect tty locking
[akpm@osdl.org: build fix]
[akpm@osdl.org: warning fix]
Signed-off-by: Alan Cox <alan@redhat.com>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | arch/sparc64/solaris/misc.c | 3 | ||||
-rw-r--r-- | drivers/char/tty_io.c | 1 |
2 files changed, 4 insertions, 0 deletions
diff --git a/arch/sparc64/solaris/misc.c b/arch/sparc64/solaris/misc.c index 642541769a17..9c581328e76a 100644 --- a/arch/sparc64/solaris/misc.c +++ b/arch/sparc64/solaris/misc.c | |||
@@ -11,6 +11,7 @@ | |||
11 | #include <linux/limits.h> | 11 | #include <linux/limits.h> |
12 | #include <linux/mm.h> | 12 | #include <linux/mm.h> |
13 | #include <linux/smp.h> | 13 | #include <linux/smp.h> |
14 | #include <linux/tty.h> | ||
14 | #include <linux/mman.h> | 15 | #include <linux/mman.h> |
15 | #include <linux/file.h> | 16 | #include <linux/file.h> |
16 | #include <linux/timex.h> | 17 | #include <linux/timex.h> |
@@ -422,7 +423,9 @@ asmlinkage int solaris_procids(int cmd, s32 pid, s32 pgid) | |||
422 | Solaris setpgrp and setsid? */ | 423 | Solaris setpgrp and setsid? */ |
423 | ret = sys_setpgid(0, 0); | 424 | ret = sys_setpgid(0, 0); |
424 | if (ret) return ret; | 425 | if (ret) return ret; |
426 | mutex_lock(&tty_mutex); | ||
425 | current->signal->tty = NULL; | 427 | current->signal->tty = NULL; |
428 | mutex_unlock(&tty_mutex); | ||
426 | return process_group(current); | 429 | return process_group(current); |
427 | } | 430 | } |
428 | case 2: /* getsid */ | 431 | case 2: /* getsid */ |
diff --git a/drivers/char/tty_io.c b/drivers/char/tty_io.c index 142427c6e8f3..48b59006afcd 100644 --- a/drivers/char/tty_io.c +++ b/drivers/char/tty_io.c | |||
@@ -129,6 +129,7 @@ LIST_HEAD(tty_drivers); /* linked list of tty drivers */ | |||
129 | /* Semaphore to protect creating and releasing a tty. This is shared with | 129 | /* Semaphore to protect creating and releasing a tty. This is shared with |
130 | vt.c for deeply disgusting hack reasons */ | 130 | vt.c for deeply disgusting hack reasons */ |
131 | DEFINE_MUTEX(tty_mutex); | 131 | DEFINE_MUTEX(tty_mutex); |
132 | EXPORT_SYMBOL(tty_mutex); | ||
132 | 133 | ||
133 | #ifdef CONFIG_UNIX98_PTYS | 134 | #ifdef CONFIG_UNIX98_PTYS |
134 | extern struct tty_driver *ptm_driver; /* Unix98 pty masters; for /dev/ptmx */ | 135 | extern struct tty_driver *ptm_driver; /* Unix98 pty masters; for /dev/ptmx */ |