From: Rui Miguel Silva <rui.silva@linaro.org>
Date: Fri, 5 Feb 2016 13:50:37 +0000 (+0000)
Subject: greybus: uart: fix double free of tty port
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=9d4bb6c9183f1283158bbb00ebf65ec4cf18ee33;p=linux.git

greybus: uart: fix double free of tty port

When inserting and removing a module with a UART protocol defined a
double free of the tty_port would happen and that would generate a lot
of kernel oops in different places related to memory corruption.

Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
---

diff --git a/drivers/staging/greybus/uart.c b/drivers/staging/greybus/uart.c
index 1ba8476ce982c..46cce8c824122 100644
--- a/drivers/staging/greybus/uart.c
+++ b/drivers/staging/greybus/uart.c
@@ -701,7 +701,6 @@ static void gb_uart_connection_exit(struct gb_connection *connection)
 
 	/* FIXME - free transmit / receive buffers */
 
-	tty_port_put(&gb_tty->port);
 	tty_port_destroy(&gb_tty->port);
 	kfree(gb_tty->buffer);
 	kfree(gb_tty);