Hi all, here's the second version of my patchset to support multiple zoned drives with dm-zoned. This patchset: - Converts the zone array to using xarray for better scalability - Separates out shared structures into per-device structure - Enforce drive-locality for allocating and reclaiming zones - Lifts the restriction of 2 devices to handle an arbitrary number of drives. This gives me a near-perfect scalability by increasing the write speed from 150MB/s (for a cache and one zoned drive) to 300MB/s (for a cache and two zoned drives). Changes to v1: - Include reviews from Damien - Reshuffle patches Changes to v2: - Add reviews from Damien - Merge patches 'dynamic device allocation' and 'support arbitrary number of devices' - Fix memory leak when reading tertiary superblocks Hannes Reinecke (14): dm-zoned: add debugging message for reading superblocks dm-zoned: secondary superblock must reside on the same devices than primary superblock dm-zoned: improve logging messages for reclaim dm-zoned: add a 'reserved' zone flag dm-zoned: convert to xarray dm-zoned: temporary superblock for tertiary devices dm-zoned: add device pointer to struct dm_zone dm-zoned: add metadata pointer to struct dmz_dev dm-zoned: per-device reclaim dm-zoned: move random and sequential zones into struct dmz_dev dm-zoned: support arbitrary number of devices dm-zoned: allocate zone by device index dm-zoned: select reclaim zone based on device index dm-zoned: prefer full zones for reclaim drivers/md/dm-zoned-metadata.c | 453 +++++++++++++++++++++++++---------------- drivers/md/dm-zoned-reclaim.c | 95 +++++---- drivers/md/dm-zoned-target.c | 169 +++++++++------ drivers/md/dm-zoned.h | 77 ++++--- 4 files changed, 485 insertions(+), 309 deletions(-) -- 2.16.4 -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel