From: Hannes Reinecke <hare@suse.de>
To: Damien Le Moal <dlemoal@kernel.org>, Jens Axboe <axboe@kernel.dk>,
linux-block@vger.kernel.org
Cc: Christoph Hellwig <hch@lst.de>
Subject: Re: [PATCH v3 13/13] block: flag zoned disks with GENHD_FL_NO_PART
Date: Tue, 11 Aug 2026 13:45:39 +0200 [thread overview]
Message-ID: <014e0f95-ecbb-42cd-b3b8-94cc8bbccc93@suse.de> (raw)
In-Reply-To: <20260811105852.1245357-14-dlemoal@kernel.org>
On 8/11/26 12:58 PM, Damien Le Moal wrote:
> Zoned block devices do not support partitions. However, the partition
> table is nevertheless still inspected, and any partition found ignored
> with a warning in add_partition(). While this is generally not a problem,
> and in fact beneficial to the user as it indicates an invalid use of a
> zoned block device, scanning for a partition table on the device may
> result in issuing read operations to offline zones (e.g. after a disk head
> is depopulated for disks that support head management operations).
>
> Since partitions are ignored anyway, completely disable partition scanning
> for zoned gendisks by setting the flag GENHD_FL_NO_PART in __add_disk().
> The existing check in add_partition() is left as-is to ensure that we
> still get a warning if for whatever reason, despite GENHD_FL_NO_PART, we
> still endup trying to add partitions.
>
> Flagging zoned disks with GENHD_FL_NO_PART also has the benefit to expose
> through sysfs the ext_range attribute with the value of 1 instead of the
> default DISK_MAX_PARTS, thus correctly advertizing the fact that zoned
> disks do not support partitions.
>
> Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
> Reviewed-by: Bart Van Assche <bvanassche@acm.org>
> ---
> block/genhd.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/block/genhd.c b/block/genhd.c
> index e8ce0cabf392..34a64077ba02 100644
> --- a/block/genhd.c
> +++ b/block/genhd.c
> @@ -447,6 +447,13 @@ static int __add_disk(struct device *parent, struct gendisk *disk,
> bdev_set_flag(disk->part0, BD_HAS_SUBMIT_BIO);
> }
>
> + /*
> + * We do not support partitions with zoned block devices, so do not try
> + * to scan the partitions table.
> + */
> + if (blk_queue_is_zoned(disk->queue))
> + disk->flags |= GENHD_FL_NO_PART;
> +
> /*
> * If the driver provides an explicit major number it also must provide
> * the number of minors numbers supported, and those will be used to
Reviewed-by: Hannes Reinecke <hare@kernel.org>
Cheers,
Hannes
--
Dr. Hannes Reinecke Kernel Storage Architect
hare@suse.de +49 911 74053 688
SUSE Software Solutions GmbH, Frankenstr. 146, 90461 Nürnberg
HRB 36809 (AG Nürnberg), GF: I. Totev, A. McDonald, W. Knoblich
prev parent reply other threads:[~2026-08-11 11:45 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-11 10:58 [PATCH v3 00/13] Improve handling of offline and read-only zones Damien Le Moal
2026-08-11 10:58 ` [PATCH v3 01/13] block: remove disk_free_zone_resources() Damien Le Moal
2026-08-11 11:41 ` Johannes Thumshirn
2026-08-11 10:58 ` [PATCH v3 02/13] block: refactor disk_revalidate_zone_resources() Damien Le Moal
2026-08-11 11:46 ` Johannes Thumshirn
2026-08-11 10:58 ` [PATCH v3 03/13] block: refactor disk_update_zone_resources() Damien Le Moal
2026-08-11 11:28 ` Hannes Reinecke
2026-08-11 11:48 ` Johannes Thumshirn
2026-08-11 10:58 ` [PATCH v3 04/13] block: remember a zone type regardless of its condition Damien Le Moal
2026-08-11 11:29 ` Hannes Reinecke
2026-08-11 10:58 ` [PATCH v3 05/13] block: refactor bdev_zone_is_seq() Damien Le Moal
2026-08-11 11:30 ` Hannes Reinecke
2026-08-11 10:58 ` [PATCH v3 06/13] block: introduce disk_for_all_zone_wplugs() Damien Le Moal
2026-08-11 11:31 ` Hannes Reinecke
2026-08-11 10:58 ` [PATCH v3 07/13] block: drop all zone write plugs on capacity changes Damien Le Moal
2026-08-11 11:33 ` Hannes Reinecke
2026-08-11 10:58 ` [PATCH v3 08/13] block: propagate readonly and offline conditions to zone write plugs Damien Le Moal
2026-08-11 11:35 ` Hannes Reinecke
2026-08-11 10:58 ` [PATCH v3 09/13] block: always treat offline and read-only zones as dead Damien Le Moal
2026-08-11 11:36 ` Hannes Reinecke
2026-08-11 10:58 ` [PATCH v3 10/13] block: fail zone management operations to read-only and offline zones Damien Le Moal
2026-08-11 11:41 ` Hannes Reinecke
2026-08-11 12:13 ` Damien Le Moal
2026-08-11 12:16 ` Hannes Reinecke
2026-08-11 10:58 ` [PATCH v3 11/13] block: allow read-only and offline conventional zones Damien Le Moal
2026-08-11 11:43 ` Hannes Reinecke
2026-08-11 10:58 ` [PATCH v3 12/13] block: simplify disk_zone_set_cond() Damien Le Moal
2026-08-11 11:45 ` Hannes Reinecke
2026-08-11 10:58 ` [PATCH v3 13/13] block: flag zoned disks with GENHD_FL_NO_PART Damien Le Moal
2026-08-11 11:45 ` Hannes Reinecke [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=014e0f95-ecbb-42cd-b3b8-94cc8bbccc93@suse.de \
--to=hare@suse.de \
--cc=axboe@kernel.dk \
--cc=dlemoal@kernel.org \
--cc=hch@lst.de \
--cc=linux-block@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox