linux-block.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/13] Zone write plugging fixes and cleanup
@ 2024-04-30 12:51 Damien Le Moal
  2024-04-30 12:51 ` [PATCH 01/13] dm: Check that a zoned table leads to a valid mapped device Damien Le Moal
                   ` (13 more replies)
  0 siblings, 14 replies; 33+ messages in thread
From: Damien Le Moal @ 2024-04-30 12:51 UTC (permalink / raw)
  To: linux-block, Jens Axboe, dm-devel, Mike Snitzer

Jens, Mike,

With more testing of zone write plugging on more device setups,
including weird/test setups (with scsi debug and null_blk), several
issues were identified. This patch series addresses them and cleanup the
code a little to try to make it more obvious.

The first patch is a DM modification to not expose zoned devices
composed solely of conventional zones as zoned block devices. The second
patch is a fix partly related to this to expose a correct max open zones
limit for devices with no limits (which DM devices are as the max
open/active limit is not propagated to the mapped device as there is no
easy way to do that).

Patches 3 to 9 are bug fixes. The most serious problem among theses was
detected with tests using scsi_debug zoned devices and is fixed in
patch 7.

Patches 10 to 13 improve and cleanup the code.

Damien Le Moal (13):
  dm: Check that a zoned table leads to a valid mapped device
  block: Exclude conventional zones when faking max open limit
  block: Fix zone write plug initialization from blk_revalidate_zone_cb()
  block: Fix reference counting for zone write plugs in error state
  block: Hold a reference on zone write plugs to schedule submission
  block: Unhash a zone write plug only if needed
  block: Do not remove zone write plugs still in use
  block: Fix flush request sector restore
  block: Fix handling of non-empty flush write requests to zones
  block: Improve blk_zone_write_plug_bio_merged()
  block: Improve zone write request completion handling
  block: Simplify blk_zone_write_plug_bio_endio()
  block: Simplify zone write plug BIO abort

 block/blk-flush.c     |   3 +-
 block/blk-mq.c        |  12 +-
 block/blk-zoned.c     | 269 +++++++++++++++++++++++++++---------------
 block/blk.h           |  12 +-
 drivers/md/dm-table.c |   3 +-
 drivers/md/dm-zone.c  |  53 +++++++++
 6 files changed, 243 insertions(+), 109 deletions(-)

-- 
2.44.0


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

end of thread, other threads:[~2024-05-01  4:57 UTC | newest]

Thread overview: 33+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-04-30 12:51 [PATCH 00/13] Zone write plugging fixes and cleanup Damien Le Moal
2024-04-30 12:51 ` [PATCH 01/13] dm: Check that a zoned table leads to a valid mapped device Damien Le Moal
2024-04-30 12:51 ` [PATCH 02/13] block: Exclude conventional zones when faking max open limit Damien Le Moal
2024-04-30 15:24   ` Christoph Hellwig
2024-04-30 19:04     ` Jens Axboe
2024-05-01  4:57       ` Christoph Hellwig
2024-04-30 12:51 ` [PATCH 03/13] block: Fix zone write plug initialization from blk_revalidate_zone_cb() Damien Le Moal
2024-04-30 15:26   ` Christoph Hellwig
2024-04-30 22:50     ` Damien Le Moal
2024-04-30 23:54       ` Damien Le Moal
2024-04-30 12:51 ` [PATCH 04/13] block: Fix reference counting for zone write plugs in error state Damien Le Moal
2024-04-30 15:28   ` Christoph Hellwig
2024-04-30 12:51 ` [PATCH 05/13] block: Hold a reference on zone write plugs to schedule submission Damien Le Moal
2024-04-30 15:30   ` Christoph Hellwig
2024-04-30 12:51 ` [PATCH 06/13] block: Unhash a zone write plug only if needed Damien Le Moal
2024-04-30 15:31   ` Christoph Hellwig
2024-04-30 12:51 ` [PATCH 07/13] block: Do not remove zone write plugs still in use Damien Le Moal
2024-04-30 15:34   ` Christoph Hellwig
2024-04-30 23:06     ` Damien Le Moal
2024-04-30 23:55       ` Damien Le Moal
2024-04-30 12:51 ` [PATCH 08/13] block: Fix flush request sector restore Damien Le Moal
2024-04-30 15:26   ` Christoph Hellwig
2024-04-30 12:51 ` [PATCH 09/13] block: Fix handling of non-empty flush write requests to zones Damien Le Moal
2024-04-30 15:34   ` Christoph Hellwig
2024-04-30 12:51 ` [PATCH 10/13] block: Improve blk_zone_write_plug_bio_merged() Damien Le Moal
2024-04-30 15:35   ` Christoph Hellwig
2024-04-30 12:51 ` [PATCH 11/13] block: Improve zone write request completion handling Damien Le Moal
2024-04-30 15:39   ` Christoph Hellwig
2024-04-30 12:51 ` [PATCH 12/13] block: Simplify blk_zone_write_plug_bio_endio() Damien Le Moal
2024-04-30 15:36   ` Christoph Hellwig
2024-04-30 12:51 ` [PATCH 13/13] block: Simplify zone write plug BIO abort Damien Le Moal
2024-04-30 15:36   ` Christoph Hellwig
2024-04-30 17:00 ` [PATCH 00/13] Zone write plugging fixes and cleanup Johannes Thumshirn

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).