diff options
author | Amol Lad <amol@verismonetworks.com> | 2006-09-21 08:42:43 -0400 |
---|---|---|
committer | David Woodhouse <dwmw2@infradead.org> | 2006-09-22 05:24:31 -0400 |
commit | 25f0c659fe64832d8ee06aa623fffaad708dcf8b (patch) | |
tree | b5740156ac2ce5e39aaaba32ddb21b03379abb48 /drivers/mtd/maps/redwood.c | |
parent | dd8e9ed6ed544e2b924429d29cd2a6b55590109b (diff) |
ioremap balanced with iounmap for drivers/mtd subsystem
ioremap must be balanced by an iounmap and failing to do so can result
in a memory leak.
Tested (compilation only) with:
- allmodconfig
- Modifying drivers/mtd/maps/Kconfig and drivers/mtd/nand/Kconfig to
make sure that the changed file is compiling without warning
Signed-off-by: Amol Lad <amol@verismonetworks.com>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Diffstat (limited to 'drivers/mtd/maps/redwood.c')
-rw-r--r-- | drivers/mtd/maps/redwood.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/mtd/maps/redwood.c b/drivers/mtd/maps/redwood.c index ec8fdae1dd99..2257d2b500c0 100644 --- a/drivers/mtd/maps/redwood.c +++ b/drivers/mtd/maps/redwood.c | |||
@@ -126,6 +126,8 @@ static struct mtd_info *redwood_mtd; | |||
126 | 126 | ||
127 | int __init init_redwood_flash(void) | 127 | int __init init_redwood_flash(void) |
128 | { | 128 | { |
129 | int err = 0; | ||
130 | |||
129 | printk(KERN_NOTICE "redwood: flash mapping: %x at %x\n", | 131 | printk(KERN_NOTICE "redwood: flash mapping: %x at %x\n", |
130 | WINDOW_SIZE, WINDOW_ADDR); | 132 | WINDOW_SIZE, WINDOW_ADDR); |
131 | 133 | ||
@@ -141,11 +143,18 @@ int __init init_redwood_flash(void) | |||
141 | 143 | ||
142 | if (redwood_mtd) { | 144 | if (redwood_mtd) { |
143 | redwood_mtd->owner = THIS_MODULE; | 145 | redwood_mtd->owner = THIS_MODULE; |
144 | return add_mtd_partitions(redwood_mtd, | 146 | err = add_mtd_partitions(redwood_mtd, |
145 | redwood_flash_partitions, | 147 | redwood_flash_partitions, |
146 | NUM_REDWOOD_FLASH_PARTITIONS); | 148 | NUM_REDWOOD_FLASH_PARTITIONS); |
149 | if (err) { | ||
150 | printk("init_redwood_flash: add_mtd_partitions failed\n"); | ||
151 | iounmap(redwood_flash_map.virt); | ||
152 | } | ||
153 | return err; | ||
154 | |||
147 | } | 155 | } |
148 | 156 | ||
157 | iounmap(redwood_flash_map.virt); | ||
149 | return -ENXIO; | 158 | return -ENXIO; |
150 | } | 159 | } |
151 | 160 | ||