summary refs log tree commit diff
path: root/drivers/serial
diff options
context:
space:
mode:
authorAlexander Beregalov <a.beregalov@gmail.com>2009-01-02 13:49:32 +0000
committerLinus Torvalds <torvalds@linux-foundation.org>2009-01-02 10:19:42 -0800
commitbc3256288b8ff9787623805e53cf7c6d5a2b4591 (patch)
tree6c93a6f80b8e7ea5472ede60f25c0c66d28e76fb /drivers/serial
parentf751928e0ddf54ea4fe5546f35e99efc5b5d9938 (diff)
downloadlinux-bc3256288b8ff9787623805e53cf7c6d5a2b4591.tar.gz
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.c4
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)
 	/*
 	 * Kill the tasklet, and free resources.
 	 */
-	if (info) {
+	if (info)
 		tasklet_kill(&info->tlet);
-		kfree(info);
-	}
 
 	state->port = NULL;
 	mutex_unlock(&port_mutex);