All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 00/10] dm: zoned block device support
@ 2017-05-08 23:40 Bart Van Assche
  2017-05-08 23:40 ` [PATCH v3 01/10] dm-table: Introduce DM_TARGET_ZONED_HM feature Bart Van Assche
                   ` (11 more replies)
  0 siblings, 12 replies; 21+ messages in thread
From: Bart Van Assche @ 2017-05-08 23:40 UTC (permalink / raw)
  To: dm-devel, Mike Snitzer, Alasdair Kergon
  Cc: Bart Van Assche, Damien Le Moal, Christoph Hellwig

From: Damien Le Moal <damien.lemoal@wdc.com>

[ Note: I'm resending this patch series on Damien's behalf because Damien's ]
[ e-mails apparently do not reach the dm-devel mailing list - Bart.         ]

This series introduces zoned block device support to the device mapper
infrastructure. Pathces are as follows:

- Patch 1: Add a new target type feature flag to indicate if a target type
  supports host-managed zoned block devices. This prevents using these drives
  with the current target types since none of them have the proper support
  implemented and will not operate properly with these drives.
- Patch 2: If a target device is a zoned block device, check that the range of
  LBAs mapped is aligned to the device zone size and that the device start
  offset also aligns to zone boundaries. This is necessary for zone reset and
  zone report correct execution.
- Patch 3: Check that the different target devices of a table have compatible
  zone sizes and models. This is necessary for target types that expose a zone
  model different from the underlying device.
- Patch 4: Fix handling of REQ_OP_ZONE_RESET bios
- Patch 5: Fix handling of REQ_OP_ZONE_REPORT bios
- Patch 6: Introduce a new helper function to reverse map a device zone report
  to the target LBA range
- Patch 7: Add support for host-managed zoned block devices to dm-flakey. This
  is necessary for testing file systems supporting natively these drives (e.g.
  f2fs).
- Patch 8: Add support for for zoned block devices to dm-linear. This can have
  useful applications during development and testing (e.g. allow creating
  smaller zoned devices with different combinations and positions of zones).
  There are also interesting applications for production, for instance, the
  ability to aggregate conventional zones of different drives to create a
  regular disk.
- Patch 9: Add sequential write enforcement to dm_kcopyd_copy so that
  sequential zones of a host-managed zoned block device can be specified as
  destinations.
- Patch 10: New dm-zoned target type (this was already sent for review twice).
  This resend adds modifications suggested by Hannes to implement reclaim
  using dm-kcopyd. dm-zoned depends on patch 9.

As always, comments and reviews are welcome.

Changes from v2:
- Rebased on 4.12-rc tree
- Added Bart Reviewed-by tag

Changes from v1:
- Use for-loop in patch 3 as suggested by Bart
- Add memory shrinker to dm-zoned to shrink the metadata block cache under
  memory pressure (suggested by Bart)
- Added Hannes Reviewed-by tag

Damien Le Moal (10):
  dm-table: Introduce DM_TARGET_ZONED_HM feature
  dm-table: Check device area zone alignment
  dm-table: Check block devices zone model compatibility
  dm: Fix REQ_OP_ZONE_RESET bio handling
  dm: Fix REQ_OP_ZONE_REPORT bio handling
  dm: Introduce dm_remap_zone_report()
  dm-flakey: Add support for zoned block devices
  dm-linear: Add support for zoned block devices
  dm-kcopyd: Add sequential write feature
  dm-zoned: Drive-managed zoned block device target

 Documentation/device-mapper/dm-zoned.txt |  154 +++
 drivers/md/Kconfig                       |   17 +
 drivers/md/Makefile                      |    2 +
 drivers/md/dm-flakey.c                   |   21 +-
 drivers/md/dm-kcopyd.c                   |   68 +-
 drivers/md/dm-linear.c                   |   15 +-
 drivers/md/dm-table.c                    |  143 ++
 drivers/md/dm-zoned-io.c                 |  999 ++++++++++++++
 drivers/md/dm-zoned-metadata.c           | 2225 ++++++++++++++++++++++++++++++
 drivers/md/dm-zoned-reclaim.c            |  535 +++++++
 drivers/md/dm-zoned.h                    |  530 +++++++
 drivers/md/dm.c                          |   93 +-
 include/linux/device-mapper.h            |   16 +
 include/linux/dm-kcopyd.h                |    1 +
 14 files changed, 4812 insertions(+), 7 deletions(-)
 create mode 100644 Documentation/device-mapper/dm-zoned.txt
 create mode 100644 drivers/md/dm-zoned-io.c
 create mode 100644 drivers/md/dm-zoned-metadata.c
 create mode 100644 drivers/md/dm-zoned-reclaim.c
 create mode 100644 drivers/md/dm-zoned.h

-- 
2.9.3

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

end of thread, other threads:[~2017-05-26 16:19 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-08 23:40 [PATCH v3 00/10] dm: zoned block device support Bart Van Assche
2017-05-08 23:40 ` [PATCH v3 01/10] dm-table: Introduce DM_TARGET_ZONED_HM feature Bart Van Assche
2017-05-08 23:40 ` [PATCH v3 02/10] dm-table: Check device area zone alignment Bart Van Assche
2017-05-08 23:40 ` [PATCH v3 03/10] dm-table: Check block devices zone model compatibility Bart Van Assche
2017-05-08 23:40 ` [PATCH v3 04/10] dm: Fix REQ_OP_ZONE_RESET bio handling Bart Van Assche
2017-05-08 23:40 ` [PATCH v3 05/10] dm: Fix REQ_OP_ZONE_REPORT " Bart Van Assche
2017-05-08 23:40 ` [PATCH v3 06/10] dm: Introduce dm_remap_zone_report() Bart Van Assche
2017-05-08 23:40 ` [PATCH v3 07/10] dm-flakey: Add support for zoned block devices Bart Van Assche
2017-05-08 23:40 ` [PATCH v3 08/10] dm-linear: " Bart Van Assche
2017-05-08 23:40 ` [PATCH v3 09/10] dm-kcopyd: Add sequential write feature Bart Van Assche
2017-05-08 23:40 ` [PATCH v3 10/10] dm-zoned: Drive-managed zoned block device target Bart Van Assche
2017-05-09 14:50 ` [PATCH v3 00/10] dm: zoned block device support Mike Snitzer
2017-05-09 15:09   ` Bart Van Assche
2017-05-16 20:03 ` Mike Snitzer
2017-05-17 18:54   ` Mike Snitzer
2017-05-18  1:55     ` Damien Le Moal
2017-05-26  2:12       ` Mike Snitzer
2017-05-26  9:10         ` Damien Le Moal
2017-05-26 14:27           ` Mike Snitzer
2017-05-26 16:19             ` Mike Snitzer
2017-05-18 15:47     ` Bart Van Assche

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.