summaryrefslogtreecommitdiff
path: root/drivers/tty/serial
diff options
context:
space:
mode:
authorSouptick Joarder <jrdr.linux@gmail.com>2016-11-14 18:07:36 +0530
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-11-16 10:57:25 +0100
commitfbb7d2e3a9cc07dd56a9c4d337352b3b1cb34c89 (patch)
tree97cf2b25ffad5828583a0bb44cb4afb815ad2a5e /drivers/tty/serial
parent31b5929d533f5183972cf57a7844b456ed996f3c (diff)
serial: sunhv: Free memory when remove() is called
In each call to hv_remove(), con_read_page and con_write_page is not getting freed and lead to memory leakage. Fix this by freeing both pointers in hv_remove(). Signed-off-by: Souptick joarder <jrdr.linux@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/serial')
-rw-r--r--drivers/tty/serial/sunhv.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/tty/serial/sunhv.c b/drivers/tty/serial/sunhv.c
index 4e603d060e80..99ef5c6e4766 100644
--- a/drivers/tty/serial/sunhv.c
+++ b/drivers/tty/serial/sunhv.c
@@ -598,7 +598,8 @@ static int hv_remove(struct platform_device *dev)
uart_remove_one_port(&sunhv_reg, port);
sunserial_unregister_minors(&sunhv_reg, 1);
-
+ kfree(con_read_page);
+ kfree(con_write_page);
kfree(port);
sunhv_port = NULL;