msm_serial: add missing iounmap() on error in msm_request_port()
authorWei Yongjun <yongjun_wei@trendmicro.com.cn>
Wed, 17 Jul 2013 05:34:09 +0000 (13:34 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 26 Jul 2013 23:04:50 +0000 (16:04 -0700)
Add the missing iounmap() before return from msm_request_port()
in the error handling case.

Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Reviewed-by: Ivan T. Ivanov <iivanov@mm-sol.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/msm_serial.c

index 2c6cfb3..0b38b28 100644 (file)
@@ -637,7 +637,7 @@ static int msm_request_port(struct uart_port *port)
                if (!request_mem_region(gsbi_resource->start, size,
                                                 "msm_serial")) {
                        ret = -EBUSY;
-                       goto fail_release_port;
+                       goto fail_release_port_membase;
                }
 
                msm_port->gsbi_base = ioremap(gsbi_resource->start, size);
@@ -651,6 +651,8 @@ static int msm_request_port(struct uart_port *port)
 
 fail_release_gsbi:
        release_mem_region(gsbi_resource->start, size);
+fail_release_port_membase:
+       iounmap(port->membase);
 fail_release_port:
        release_mem_region(port->mapbase, size);
        return ret;