diff options
author | Linas Vepstas <linas@austin.ibm.com> | 2006-08-05 12:14:36 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-08-06 08:57:48 -0700 |
commit | 229395c90aadbadef76bacf52b9cb3326f509e93 (patch) | |
tree | 53705312e1521192a3fff0af34a5aa1d62f40372 | |
parent | 825e037fb8912f38e9d9ddd3ec79fa7c584db708 (diff) | |
download | op-kernel-dev-229395c90aadbadef76bacf52b9cb3326f509e93.zip op-kernel-dev-229395c90aadbadef76bacf52b9cb3326f509e93.tar.gz |
[PATCH] pSeries hvsi char driver null pointer deref
Under certain rare circumstances, it appears that there can be be a
NULL-pointer deref when a user fiddles with terminal emeulation programs while
outpu is being sent to the console. This patch checks for and avoids a
NULL-pointer deref.
Signed-off-by: Hollis Blanchard <hollisbl@austin.ibm.com>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: Paul Fulghum <paulkf@microgate.com>
Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | drivers/char/hvsi.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/char/hvsi.c b/drivers/char/hvsi.c index 41db806..54cbb58 100644 --- a/drivers/char/hvsi.c +++ b/drivers/char/hvsi.c @@ -311,7 +311,8 @@ static void hvsi_recv_control(struct hvsi_struct *hp, uint8_t *packet, /* CD went away; no more connection */ pr_debug("hvsi%i: CD dropped\n", hp->index); hp->mctrl &= TIOCM_CD; - if (!(hp->tty->flags & CLOCAL)) + /* If userland hasn't done an open(2) yet, hp->tty is NULL. */ + if (hp->tty && !(hp->tty->flags & CLOCAL)) *to_hangup = hp->tty; } break; |