mirror of
https://github.com/torvalds/linux.git
synced 2024-11-02 10:11:36 +00:00
mtd: phram: fix memory leak
Commit 4f678a58
(mtd: fix memory leaks in phram_setup) missed two cases
where the memory allocated for name would be leaked. This commit frees
the memory when register_device() fails and on unregister_devices().
Signed-off-by: Mathias Krause <minipli@googlemail.com>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
This commit is contained in:
parent
07be303d22
commit
f17f12ce9d
@ -117,6 +117,7 @@ static void unregister_devices(void)
|
||||
list_for_each_entry_safe(this, safe, &phram_list, list) {
|
||||
del_mtd_device(&this->mtd);
|
||||
iounmap(this->mtd.priv);
|
||||
kfree(this->mtd.name);
|
||||
kfree(this);
|
||||
}
|
||||
}
|
||||
@ -275,6 +276,8 @@ static int phram_setup(const char *val, struct kernel_param *kp)
|
||||
ret = register_device(name, start, len);
|
||||
if (!ret)
|
||||
pr_info("%s device: %#x at %#x\n", name, len, start);
|
||||
else
|
||||
kfree(name);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user