diff options
author | Brian Norris <computersforpeace@gmail.com> | 2015-02-28 02:23:26 -0800 |
---|---|---|
committer | Sasha Levin <sasha.levin@oracle.com> | 2015-05-17 19:12:10 -0400 |
commit | c2ffa098d6f9d427269912e33beecb00c57d9460 (patch) | |
tree | ed52928a7a81a9f4f51c427fc1dde200b6e42324 /drivers/mtd/ubi | |
parent | cdf5f4433cfdbf2aaf3dabbeaa392326895149fe (diff) | |
download | linux-rt-c2ffa098d6f9d427269912e33beecb00c57d9460.tar.gz |
UBI: fix out of bounds write
[ Upstream commit d74adbdb9abf0d2506a6c4afa534d894f28b763f ]
If aeb->len >= vol->reserved_pebs, we should not be writing aeb into the
PEB->LEB mapping.
Caught by Coverity, CID #711212.
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
Diffstat (limited to 'drivers/mtd/ubi')
-rw-r--r-- | drivers/mtd/ubi/eba.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/mtd/ubi/eba.c b/drivers/mtd/ubi/eba.c index 2402d3b50171..493f7b3dbc33 100644 --- a/drivers/mtd/ubi/eba.c +++ b/drivers/mtd/ubi/eba.c @@ -1361,7 +1361,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; } } |