From 65da4d81f48e092f71feaf04bf2ccd096b5a5171 Mon Sep 17 00:00:00 2001
From: Amol Lad <amol@verismonetworks.com>
Date: Sat, 30 Sep 2006 23:29:25 -0700
Subject: [PATCH] [PATCH] ioremap balanced with iounmap for
 drivers/serial/sunsu.c

ioremap must be balanced by an iounmap and failing to do so can result
in a memory leak.

Signed-off-by: Amol Lad <amol@verismonetworks.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: David S. Miller <davem@sunset.davemloft.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
---
 drivers/serial/sunsu.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/serial/sunsu.c b/drivers/serial/sunsu.c
index d3a5aeee73a34b..9b3b9aaa6b909e 100644
--- a/drivers/serial/sunsu.c
+++ b/drivers/serial/sunsu.c
@@ -1499,6 +1499,9 @@ static int __devexit su_remove(struct of_device *dev)
 		uart_remove_one_port(&sunsu_reg, &up->port);
 	}
 
+	if (up->port.membase)
+		of_iounmap(up->port.membase, up->reg_size);
+
 	dev_set_drvdata(&dev->dev, NULL);
 
 	return 0;
-- 
GitLab