Commit 298304f1 authored by Maxim Levitsky's avatar Maxim Levitsky Committed by David Woodhouse

mtd: mtdblock: test return value of add_mtd_blktrans_dev, because if can fail

This prevents a memory leak
Signed-off-by: default avatarMaxim Levitsky <maximlevitsky@gmail.com>
Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
parent 048d8719
...@@ -348,7 +348,8 @@ static void mtdblock_add_mtd(struct mtd_blktrans_ops *tr, struct mtd_info *mtd) ...@@ -348,7 +348,8 @@ static void mtdblock_add_mtd(struct mtd_blktrans_ops *tr, struct mtd_info *mtd)
if (!(mtd->flags & MTD_WRITEABLE)) if (!(mtd->flags & MTD_WRITEABLE))
dev->mbd.readonly = 1; dev->mbd.readonly = 1;
add_mtd_blktrans_dev(&dev->mbd); if (add_mtd_blktrans_dev(&dev->mbd))
kfree(dev);
} }
static void mtdblock_remove_dev(struct mtd_blktrans_dev *dev) static void mtdblock_remove_dev(struct mtd_blktrans_dev *dev)
......
...@@ -43,7 +43,8 @@ static void mtdblock_add_mtd(struct mtd_blktrans_ops *tr, struct mtd_info *mtd) ...@@ -43,7 +43,8 @@ static void mtdblock_add_mtd(struct mtd_blktrans_ops *tr, struct mtd_info *mtd)
dev->tr = tr; dev->tr = tr;
dev->readonly = 1; dev->readonly = 1;
add_mtd_blktrans_dev(dev); if (add_mtd_blktrans_dev(dev))
kfree(dev);
} }
static void mtdblock_remove_dev(struct mtd_blktrans_dev *dev) static void mtdblock_remove_dev(struct mtd_blktrans_dev *dev)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment