projects
/
GitHub
/
MotorolaMobilityLLC
/
kernel-slsi.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
fc77dbd
)
ubi: Fix out of bounds write in volume update code
author
Richard Weinberger
<richard@nod.at>
Sun, 21 Feb 2016 09:53:03 +0000
(10:53 +0100)
committer
Richard Weinberger
<richard@nod.at>
Sat, 5 Mar 2016 20:56:23 +0000
(21:56 +0100)
ubi_start_leb_change() allocates too few bytes.
ubi_more_leb_change_data() will write up to req->upd_bytes +
ubi->min_io_size bytes.
Cc: stable@vger.kernel.org
Signed-off-by: Richard Weinberger <richard@nod.at>
Reviewed-by: Boris Brezillon <boris.brezillon@free-electrons.com>
drivers/mtd/ubi/upd.c
patch
|
blob
|
blame
|
history
diff --git
a/drivers/mtd/ubi/upd.c
b/drivers/mtd/ubi/upd.c
index 2a1b6e037e1a1ced496ac446ca07d6037ef61d0e..0134ba32a05784b65d1a0e6d470eee7a857df74c 100644
(file)
--- a/
drivers/mtd/ubi/upd.c
+++ b/
drivers/mtd/ubi/upd.c
@@
-193,7
+193,7
@@
int ubi_start_leb_change(struct ubi_device *ubi, struct ubi_volume *vol,
vol->changing_leb = 1;
vol->ch_lnum = req->lnum;
- vol->upd_buf = vmalloc(
req->bytes
);
+ vol->upd_buf = vmalloc(
ALIGN((int)req->bytes, ubi->min_io_size)
);
if (!vol->upd_buf)
return -ENOMEM;