mmc: omap_hsmmc: release correct resource
authorRussell King <rmk+kernel@arm.linux.org.uk>
Wed, 18 Apr 2012 10:11:57 +0000 (11:11 +0100)
committerChris Ball <cjb@laptop.org>
Sun, 22 Apr 2012 15:17:42 +0000 (11:17 -0400)
res can be one of several resources, as this variable is re-used several
times during probe.  This can cause the wrong resource parameters to be
passed to release_mem_region().

Get the original memory resource before calling release_mem_region().

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/host/omap_hsmmc.c

index 4254b6f310aaabeb970c6a4214dfca4311f1b9ff..d15b149649bf9d8122751ebc8f4eeb6060e9e47c 100644 (file)
@@ -2042,7 +2042,9 @@ err1:
 err_alloc:
        omap_hsmmc_gpio_free(pdata);
 err:
-       release_mem_region(res->start, resource_size(res));
+       res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+       if (res)
+               release_mem_region(res->start, resource_size(res));
        return ret;
 }