diff options
author | Andrew Morton <akpm@osdl.org> | 2006-12-08 09:53:52 -0500 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2006-12-08 09:53:52 -0500 |
commit | e45ccc0562e3f391dcba8b2e8a02551e8e42d8db (patch) | |
tree | 447e6ba958fe81cc13a9b72649754d032d5859d5 /drivers/s390/char | |
parent | 22155914b66b348b7113a0b3baf96a72bd3f643d (diff) |
[S390] workqueue fixes.
Cc: David Howells <dhowells@redhat.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390/char')
-rw-r--r-- | drivers/s390/char/ctrlchar.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/s390/char/ctrlchar.c b/drivers/s390/char/ctrlchar.c index 49e9628d9297..c6cbcb3f925e 100644 --- a/drivers/s390/char/ctrlchar.c +++ b/drivers/s390/char/ctrlchar.c | |||
@@ -16,14 +16,15 @@ | |||
16 | 16 | ||
17 | #ifdef CONFIG_MAGIC_SYSRQ | 17 | #ifdef CONFIG_MAGIC_SYSRQ |
18 | static int ctrlchar_sysrq_key; | 18 | static int ctrlchar_sysrq_key; |
19 | static struct tty_struct *sysrq_tty; | ||
19 | 20 | ||
20 | static void | 21 | static void |
21 | ctrlchar_handle_sysrq(void *tty) | 22 | ctrlchar_handle_sysrq(struct work_struct *work) |
22 | { | 23 | { |
23 | handle_sysrq(ctrlchar_sysrq_key, (struct tty_struct *) tty); | 24 | handle_sysrq(ctrlchar_sysrq_key, sysrq_tty); |
24 | } | 25 | } |
25 | 26 | ||
26 | static DECLARE_WORK(ctrlchar_work, ctrlchar_handle_sysrq, NULL); | 27 | static DECLARE_WORK(ctrlchar_work, ctrlchar_handle_sysrq); |
27 | #endif | 28 | #endif |
28 | 29 | ||
29 | 30 | ||
@@ -53,7 +54,7 @@ ctrlchar_handle(const unsigned char *buf, int len, struct tty_struct *tty) | |||
53 | /* racy */ | 54 | /* racy */ |
54 | if (len == 3 && buf[1] == '-') { | 55 | if (len == 3 && buf[1] == '-') { |
55 | ctrlchar_sysrq_key = buf[2]; | 56 | ctrlchar_sysrq_key = buf[2]; |
56 | ctrlchar_work.data = tty; | 57 | sysrq_tty = tty; |
57 | schedule_work(&ctrlchar_work); | 58 | schedule_work(&ctrlchar_work); |
58 | return CTRLCHAR_SYSRQ; | 59 | return CTRLCHAR_SYSRQ; |
59 | } | 60 | } |