mtdblock: Warn if added for a NAND device
There is a surprisingly large number of tutorials that suggest using mtdblock to mount SquashFS filesystems on flash devices, including NAND devices. This approach is suboptimal than using UBI. If the flash device is NAND, this is specially true, due to wear leveling, bit-flips and badblocks. In this case UBI is strongly preferred, so be nice to users and print a warning suggesting to consider UBI block, if mtdblock is added for a NAND device. Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com> Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> Link: https://lore.kernel.org/linux-mtd/20210801234509.18774-8-ezequiel@collabora.com
This commit is contained in:
parent
42ba8c3b42
commit
e07403a8c6
|
@ -322,6 +322,10 @@ static void mtdblock_add_mtd(struct mtd_blktrans_ops *tr, struct mtd_info *mtd)
|
|||
if (!(mtd->flags & MTD_WRITEABLE))
|
||||
dev->mbd.readonly = 1;
|
||||
|
||||
if (mtd_type_is_nand(mtd))
|
||||
pr_warn("%s: MTD device '%s' is NAND, please consider using UBI block devices instead.\n",
|
||||
tr->name, mtd->name);
|
||||
|
||||
if (add_mtd_blktrans_dev(&dev->mbd))
|
||||
kfree(dev);
|
||||
}
|
||||
|
|
|
@ -46,6 +46,10 @@ static void mtdblock_add_mtd(struct mtd_blktrans_ops *tr, struct mtd_info *mtd)
|
|||
dev->tr = tr;
|
||||
dev->readonly = 1;
|
||||
|
||||
if (mtd_type_is_nand(mtd))
|
||||
pr_warn("%s: MTD device '%s' is NAND, please consider using UBI block devices instead.\n",
|
||||
tr->name, mtd->name);
|
||||
|
||||
if (add_mtd_blktrans_dev(dev))
|
||||
kfree(dev);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue