[PATCH] ioremap balanced with iounmap for drivers/serial/sunsu.c
authorAmol Lad <amol@verismonetworks.com>
Sun, 1 Oct 2006 06:29:25 +0000 (23:29 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sun, 1 Oct 2006 07:39:32 +0000 (00:39 -0700)
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

index d3a5aeee73a34b33bb4736b751a2aacab8ec5e8a..9b3b9aaa6b909efd4a7bc61e111a01cd8b6a373b 100644 (file)
@@ -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;