提交 ea6d833a 编写于 作者: F Fabian Frederick 提交者: Brian Norris

mtd: block2mtd: check device size

fixme applied : check device size is a multiple of erasesize.
Signed-off-by: NFabian Frederick <fabf@skynet.be>
Signed-off-by: NBrian Norris <computersforpeace@gmail.com>
上级 90445ff6
......@@ -209,7 +209,6 @@ static void block2mtd_free_device(struct block2mtd_dev *dev)
}
/* FIXME: ensure that mtd->size % erase_size == 0 */
static struct block2mtd_dev *add_device(char *devname, int erase_size)
{
const fmode_t mode = FMODE_READ | FMODE_WRITE | FMODE_EXCL;
......@@ -249,6 +248,11 @@ static struct block2mtd_dev *add_device(char *devname, int erase_size)
goto err_free_block2mtd;
}
if ((long)dev->blkdev->bd_inode->i_size % erase_size) {
pr_err("erasesize must be a divisor of device size\n");
goto err_free_block2mtd;
}
mutex_init(&dev->write_mutex);
/* Setup the MTD structure */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册