[PATCH] mtd_blkdevs: don't scan partitions for plain mtdblock
Jens Axboe
axboe at kernel.dk
Fri Dec 10 10:52:26 PST 2021
On Mon, Dec 6, 2021 at 12:04 AM Christoph Hellwig <hch at lst.de> wrote:
>
> mtdblock / mtdblock_ro set part_bits to 0 and thus nevever scanned
> partitions. Restore that behavior by setting the GENHD_FL_NO_PART flag.
>
> Fixes: 1ebe2e5f9d68e94c ("block: remove GENHD_FL_EXT_DEVT")
> Reported-by: Geert Uytterhoeven <geert+renesas at glider.be>
> Signed-off-by: Christoph Hellwig <hch at lst.de>
> Tested-by: Geert Uytterhoeven <geert+renesas at glider.be>
> ---
> drivers/mtd/mtd_blkdevs.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/mtd/mtd_blkdevs.c b/drivers/mtd/mtd_blkdevs.c
> index 113f86df76038..243f28a3206b4 100644
> --- a/drivers/mtd/mtd_blkdevs.c
> +++ b/drivers/mtd/mtd_blkdevs.c
> @@ -346,7 +346,7 @@ int add_mtd_blktrans_dev(struct mtd_blktrans_dev *new)
> gd->minors = 1 << tr->part_bits;
> gd->fops = &mtd_block_ops;
>
> - if (tr->part_bits)
> + if (tr->part_bits) {
> if (new->devnum < 26)
> snprintf(gd->disk_name, sizeof(gd->disk_name),
> "%s%c", tr->name, 'a' + new->devnum);
> @@ -355,9 +355,11 @@ int add_mtd_blktrans_dev(struct mtd_blktrans_dev *new)
> "%s%c%c", tr->name,
> 'a' - 1 + new->devnum / 26,
> 'a' + new->devnum % 26);
> - else
> + } else {
> snprintf(gd->disk_name, sizeof(gd->disk_name),
> "%s%d", tr->name, new->devnum);
> + gd->flags |= GENHD_FL_NO_PART;
> + }
Not sure why I didn't spot this until now, but:
drivers/mtd/mtd_blkdevs.c: In function ‘add_mtd_blktrans_dev’:
drivers/mtd/mtd_blkdevs.c:362:30: error: ‘GENHD_FL_NO_PART’ undeclared (first use in this function); did you mean ‘GENHD_FL_NO_PART_SCAN’?
362 | gd->flags |= GENHD_FL_NO_PART;
| ^~~~~~~~~~~~~~~~
| GENHD_FL_NO_PART_SCAN
drivers/mtd/mtd_blkdevs.c:362:30: note: each undeclared identifier is reported only once for each function it appears in
Hmm?
I'm going to revert this one for now, not sure how it could've been
tested in this form.
--
Jens Axboe
More information about the linux-mtd
mailing list