Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3502fbcc authored by Luis Henriques's avatar Luis Henriques Committed by Brian Norris
Browse files

mtd: maps: add missing iounmap() in error path



This patch was triggered by the following Coccinelle error:

./drivers/mtd/maps/sc520cdp.c:246:3-9: \
	ERROR: missing iounmap; ioremap on line 242 \
	and execution via conditional on line 244

Since do_map_probe() is also invoked in this loop, it is also necessary to
map_destroy() any initialised struct mtd_info.

Signed-off-by: default avatarLuis Henriques <henrix@camandro.org>
Reviewed-by: default avatarMarek Vasut <marek.vasut@gmail.com>
Signed-off-by: default avatarBrian Norris <computersforpeace@gmail.com>
parent 5fed67df
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -227,7 +227,7 @@ static void sc520cdp_setup_par(void)

static int __init init_sc520cdp(void)
{
	int i, devices_found = 0;
	int i, j, devices_found = 0;

#ifdef REPROGRAM_PAR
	/* reprogram PAR registers so flash appears at the desired addresses */
@@ -243,6 +243,12 @@ static int __init init_sc520cdp(void)

		if (!sc520cdp_map[i].virt) {
			printk("Failed to ioremap_nocache\n");
			for (j = 0; j < i; j++) {
				if (mymtd[j]) {
					map_destroy(mymtd[j]);
					iounmap(sc520cdp_map[j].virt);
				}
			}
			return -EIO;
		}