diff options
author | Roel Kluin <roel.kluin@gmail.com> | 2009-08-06 09:00:37 -0400 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2009-08-19 20:29:28 -0400 |
commit | 728656506447b3b349d082a7fb99445f9cb0caaa (patch) | |
tree | 191c955b70e92e8fca448c71884b41e52ac97b07 | |
parent | 6826a57d1abc8ac9f59b24f1a008554c6560a995 (diff) |
powerpc/hvsi: Avoid calculating possibly-invalid address
Check whether index is within bounds prior to calculating a
possibly-invalid address.
Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Cc: Bernd Petrovitsch <bernd@firmix.at>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.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 2989056a9e39..793b236c9266 100644 --- a/drivers/char/hvsi.c +++ b/drivers/char/hvsi.c | |||
@@ -1230,11 +1230,12 @@ static struct tty_driver *hvsi_console_device(struct console *console, | |||
1230 | 1230 | ||
1231 | static int __init hvsi_console_setup(struct console *console, char *options) | 1231 | static int __init hvsi_console_setup(struct console *console, char *options) |
1232 | { | 1232 | { |
1233 | struct hvsi_struct *hp = &hvsi_ports[console->index]; | 1233 | struct hvsi_struct *hp; |
1234 | int ret; | 1234 | int ret; |
1235 | 1235 | ||
1236 | if (console->index < 0 || console->index >= hvsi_count) | 1236 | if (console->index < 0 || console->index >= hvsi_count) |
1237 | return -1; | 1237 | return -1; |
1238 | hp = &hvsi_ports[console->index]; | ||
1238 | 1239 | ||
1239 | /* give the FSP a chance to change the baud rate when we re-open */ | 1240 | /* give the FSP a chance to change the baud rate when we re-open */ |
1240 | hvsi_close_protocol(hp); | 1241 | hvsi_close_protocol(hp); |