summaryrefslogtreecommitdiffstats
path: root/drivers/mtd/mtdswap.c
diff options
context:
space:
mode:
authorBrian Norris <computersforpeace@gmail.com>2014-07-22 04:07:02 +0200
committerBrian Norris <computersforpeace@gmail.com>2014-08-19 20:53:08 +0200
commit8c3f3f1d7941bcb25590b784f84accd7dcb44ba3 (patch)
treeec7bfd61402b1689d857b37da4435b519be36125 /drivers/mtd/mtdswap.c
parentmtd: remove dead non-char logic (diff)
downloadlinux-8c3f3f1d7941bcb25590b784f84accd7dcb44ba3.tar.xz
linux-8c3f3f1d7941bcb25590b784f84accd7dcb44ba3.zip
mtd: mtdswap: fix integer overflow
Caught by Coverity. Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Diffstat (limited to 'drivers/mtd/mtdswap.c')
-rw-r--r--drivers/mtd/mtdswap.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mtd/mtdswap.c b/drivers/mtd/mtdswap.c
index 0ec96cd5dc78..48cf6f98df44 100644
--- a/drivers/mtd/mtdswap.c
+++ b/drivers/mtd/mtdswap.c
@@ -1474,7 +1474,7 @@ static void mtdswap_add_mtd(struct mtd_blktrans_ops *tr, struct mtd_info *mtd)
}
eblocks = mtd_div_by_eb(use_size, mtd);
- use_size = eblocks * mtd->erasesize;
+ use_size = (uint64_t)eblocks * mtd->erasesize;
bad_blocks = mtdswap_badblocks(mtd, use_size);
eavailable = eblocks - bad_blocks;