diff options
author | Alexander Beregalov <a.beregalov@gmail.com> | 2009-01-02 08:49:32 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-01-02 13:19:42 -0500 |
commit | bc3256288b8ff9787623805e53cf7c6d5a2b4591 (patch) | |
tree | 6c93a6f80b8e7ea5472ede60f25c0c66d28e76fb /drivers/serial | |
parent | f751928e0ddf54ea4fe5546f35e99efc5b5d9938 (diff) |
fix for tty-serial-move-port
Hi Alan
next-20081204 crashes with the following message:
BUG: unable to handle kernel paging request at ffff88007d320248
IP: [<ffffffff803de934>] uart_remove_one_port+0xef/0x111
kfree(info);
393: 49 8d 7d 10 lea 0x10(%r13),%rdi
397: e8 00 00 00 00 callq 39c <uart_remove_one_port+0xef>
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/serial')
-rw-r--r-- | drivers/serial/serial_core.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/serial/serial_core.c b/drivers/serial/serial_core.c index daeba1c52c8e..9425ed69e0f7 100644 --- a/drivers/serial/serial_core.c +++ b/drivers/serial/serial_core.c | |||
@@ -2530,10 +2530,8 @@ int uart_remove_one_port(struct uart_driver *drv, struct uart_port *port) | |||
2530 | /* | 2530 | /* |
2531 | * Kill the tasklet, and free resources. | 2531 | * Kill the tasklet, and free resources. |
2532 | */ | 2532 | */ |
2533 | if (info) { | 2533 | if (info) |
2534 | tasklet_kill(&info->tlet); | 2534 | tasklet_kill(&info->tlet); |
2535 | kfree(info); | ||
2536 | } | ||
2537 | 2535 | ||
2538 | state->port = NULL; | 2536 | state->port = NULL; |
2539 | mutex_unlock(&port_mutex); | 2537 | mutex_unlock(&port_mutex); |