From: Brian Norris Date: Sat, 28 Feb 2015 10:23:26 +0000 (-0800) Subject: UBI: fix out of bounds write X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=d74adbdb9abf0d2506a6c4afa534d894f28b763f;p=deliverable%2Flinux.git UBI: fix out of bounds write If aeb->len >= vol->reserved_pebs, we should not be writing aeb into the PEB->LEB mapping. Caught by Coverity, CID #711212. Cc: stable Signed-off-by: Brian Norris Signed-off-by: Richard Weinberger --- diff --git a/drivers/mtd/ubi/eba.c b/drivers/mtd/ubi/eba.c index 16e34b37d134..8c9a710def99 100644 --- a/drivers/mtd/ubi/eba.c +++ b/drivers/mtd/ubi/eba.c @@ -1419,7 +1419,8 @@ int ubi_eba_init(struct ubi_device *ubi, struct ubi_attach_info *ai) * during re-size. */ ubi_move_aeb_to_list(av, aeb, &ai->erase); - vol->eba_tbl[aeb->lnum] = aeb->pnum; + else + vol->eba_tbl[aeb->lnum] = aeb->pnum; } }