| From | Greg Kroah-Hartman <> | Subject | [PATCH 4.3 058/200] mtd: ubi: dont leak e if schedule_erase() fails | Date | Sun, 14 Feb 2016 14:21:05 -0800 |
| |
4.3-stable review patch. If anyone has any objections, please let me know.
------------------
From: Sebastian Siewior <bigeasy@linutronix.de>
commit 6b238de189f69dc77d660d4cce62eed15547f4c3 upstream.
If __erase_worker() fails to erase the EB and schedule_erase() fails as well to do anything about it then we go RO. But that is not a reason to leak the e argument here. Therefore clean up e.
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Richard Weinberger <richard@nod.at> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
--- drivers/mtd/ubi/wl.c | 1 + 1 file changed, 1 insertion(+)
--- a/drivers/mtd/ubi/wl.c +++ b/drivers/mtd/ubi/wl.c @@ -1060,6 +1060,7 @@ static int __erase_worker(struct ubi_dev /* Re-schedule the LEB for erasure */ err1 = schedule_erase(ubi, e, vol_id, lnum, 0); if (err1) { + wl_entry_destroy(ubi, e); err = err1; goto out_ro; }
|