Linux block layer
 help / color / mirror / Atom feed
* [PATCH v7 00/16] Improve handling of offline and read-only zones
@ 2026-09-08  8:57 Damien Le Moal
  2026-09-08  8:57 ` [PATCH v7 01/16] block: remove disk_free_zone_resources() Damien Le Moal
                   ` (15 more replies)
  0 siblings, 16 replies; 28+ messages in thread
From: Damien Le Moal @ 2026-09-08  8:57 UTC (permalink / raw)
  To: Jens Axboe, linux-block; +Cc: Christoph Hellwig

Jens,

This patch series refactor some zone related code, improves the caching of
zone information and the management of zone write plugs in preparation for
fully supporting storage element depopulation.

Most of the functional changes here are around the revalidation of the
device capacity and the management of zone write plugs to better handle
read-only and offline zones as these conditions can become more common
with storage element being depopulated.

Changes from v6:
 - Rebased on block/for-next
 - Added patch 2, 9 and 11 to make revalidation more solid against disk
   capacity changes. Due to these changes, review tags for patch 4 were
   dropped.
 - Added patch 7 to improve cached report zones.

Changes from v5:
 - Rebased on 7.3-rc1
 - Removed patch 13 as it was sent separately as a fix patch

Changes from v4:
 - Renamed bdev_check_zone_mgmt() to bdev_zone_mgmt_allowed() in patch 10
 - Added Fixes tag to patch 13
 - Added review tags

Changes from v3:
 - Rebased on latest block/for-next
 - Small modification to patch 4 to address Sashiko review comments
   complaining about the potential for out of bound accesses to the zone
   state array.
 - Added review tags

Changes from v2:
 - Minor changes to patches 1, 5, 7 and 8 to address some of the Sashiko
   review comments (a lot of these comments point to cases that cannot
   happen in practice or that are non-fatal and would generate errors due
   to a user invalid use of the device).
 - Applied review tags

Changes from v1:
 - Fixup error path change in patch 1
 - Use WARN_ON_ONCE in patch 4
 - Dropped patch 14
 - Applied review tags

Damien Le Moal (16):
  block: remove disk_free_zone_resources()
  block: improve capacity handling during zone revalidation
  block: refactor disk_revalidate_zone_resources()
  block: refactor disk_update_zone_resources()
  block: remember a zone type regardless of its condition
  block: refactor bdev_zone_is_seq()
  block: improve blkdev_get_zone_info()
  block: introduce disk_for_all_zone_wplugs()
  block: serialize zone revalidation
  block: drop all zone write plugs on capacity changes
  block: retry zone revalidation on capacity change
  block: propagate readonly and offline conditions to zone write plugs
  block: always treat offline and read-only zones as dead
  block: fail zone management operations to read-only and offline zones
  block: allow read-only and offline conventional zones
  block: simplify disk_zone_set_cond()

 block/blk-core.c       |   7 +-
 block/blk-zoned.c      | 848 ++++++++++++++++++++++++++---------------
 block/blk.h            |   6 +
 include/linux/blkdev.h |  11 +-
 4 files changed, 550 insertions(+), 322 deletions(-)


base-commit: ba285edf3fd1a27f8ec739b5b396d45c98eabee0
-- 
2.55.0


^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2026-09-10  5:26 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-08  8:57 [PATCH v7 00/16] Improve handling of offline and read-only zones Damien Le Moal
2026-09-08  8:57 ` [PATCH v7 01/16] block: remove disk_free_zone_resources() Damien Le Moal
2026-09-08  8:57 ` [PATCH v7 02/16] block: improve capacity handling during zone revalidation Damien Le Moal
2026-09-09  8:51   ` Hannes Reinecke
2026-09-10  5:20   ` Christoph Hellwig
2026-09-08  8:57 ` [PATCH v7 03/16] block: refactor disk_revalidate_zone_resources() Damien Le Moal
2026-09-08  8:57 ` [PATCH v7 04/16] block: refactor disk_update_zone_resources() Damien Le Moal
2026-09-09  9:09   ` Hannes Reinecke
2026-09-10  5:20   ` Christoph Hellwig
2026-09-08  8:57 ` [PATCH v7 05/16] block: remember a zone type regardless of its condition Damien Le Moal
2026-09-08  8:57 ` [PATCH v7 06/16] block: refactor bdev_zone_is_seq() Damien Le Moal
2026-09-08  8:57 ` [PATCH v7 07/16] block: improve blkdev_get_zone_info() Damien Le Moal
2026-09-09  9:11   ` Hannes Reinecke
2026-09-10  5:21   ` Christoph Hellwig
2026-09-08  8:57 ` [PATCH v7 08/16] block: introduce disk_for_all_zone_wplugs() Damien Le Moal
2026-09-08  8:57 ` [PATCH v7 09/16] block: serialize zone revalidation Damien Le Moal
2026-09-09  9:20   ` Hannes Reinecke
2026-09-10  5:21   ` Christoph Hellwig
2026-09-08  8:57 ` [PATCH v7 10/16] block: drop all zone write plugs on capacity changes Damien Le Moal
2026-09-08  8:57 ` [PATCH v7 11/16] block: retry zone revalidation on capacity change Damien Le Moal
2026-09-09  9:26   ` Hannes Reinecke
2026-09-10  5:24   ` Christoph Hellwig
2026-09-10  5:26     ` Damien Le Moal
2026-09-08  8:57 ` [PATCH v7 12/16] block: propagate readonly and offline conditions to zone write plugs Damien Le Moal
2026-09-08  8:57 ` [PATCH v7 13/16] block: always treat offline and read-only zones as dead Damien Le Moal
2026-09-08  8:57 ` [PATCH v7 14/16] block: fail zone management operations to read-only and offline zones Damien Le Moal
2026-09-08  8:57 ` [PATCH v7 15/16] block: allow read-only and offline conventional zones Damien Le Moal
2026-09-08  8:57 ` [PATCH v7 16/16] block: simplify disk_zone_set_cond() Damien Le Moal

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox