Message ID | 20191111023930.638129-1-damien.lemoal@wdc.com (mailing list archive) |
---|---|
Headers | show |
Series | Zoned block device enhancements and zone report rework | expand |
On 11/10/19 6:39 PM, Damien Le Moal wrote: > This series of patches introduces changes to zoned block device handling > code with the intent to simplify the code while optimizing run-time > operation, particularly in the area of zone reporting. > > The first patch lifts the device zone check code out of the sd driver > and reimplements these zone checks generically as part of > blk_revalidate_disk_zones(). This avoids zoned block device drivers to > have to implement these checks. The second patch simplifies this > function code for the !zoned case. > > The third patch is a small cleanup of zone report processing in > preparation for the fourth patch which removes support for partitions > on zoned block devices. As mentioned in that patch commit message, none > of the known partitioning tools support zoned devices and there are no > known use case in the field of SMR disks being used with partitions. > Dropping partition supports allows to significantly simplify the code > for zone report as zone sector values remapping becomes unnecessary. > > Patch 5 to 6 are small cleanups and fixes of the null_blk driver zoned > mode. > > The prep patch 7 optimizes zone report buffer allocation for the SCSI > sd driver. Finally, patch 8 introduces a new interface for report zones > handling using a callback function executed per zone reported by the > device. This allows avoiding the need to allocate large arrays of > blk_zone structures for the execution of zone reports. This can > significantly reduce memory usage and pressure on the memory management > system while significantly simplify the code all over. > > Overall, this series not only reduces significantly the code size, it > also improves run-time memory usage for zone report execution. > > This series applies cleanly on the for-next block tree on top of the > zone management operation series. It may however create a conflict with > Christoph's reqork of disk size revalidation. Please consider this > series for inclusion in the 5.5 kernel. We're taking branching to new levels... I created for-5.5/zoned for this, which is for-5.5/block + for-5.5/drivers + for-5.5/drivers-post combined. The latter is a branch with the SCSI dependencies from Martin pulled in.
On 2019/11/13 11:16, Jens Axboe wrote: > On 11/10/19 6:39 PM, Damien Le Moal wrote: >> This series of patches introduces changes to zoned block device handling >> code with the intent to simplify the code while optimizing run-time >> operation, particularly in the area of zone reporting. >> >> The first patch lifts the device zone check code out of the sd driver >> and reimplements these zone checks generically as part of >> blk_revalidate_disk_zones(). This avoids zoned block device drivers to >> have to implement these checks. The second patch simplifies this >> function code for the !zoned case. >> >> The third patch is a small cleanup of zone report processing in >> preparation for the fourth patch which removes support for partitions >> on zoned block devices. As mentioned in that patch commit message, none >> of the known partitioning tools support zoned devices and there are no >> known use case in the field of SMR disks being used with partitions. >> Dropping partition supports allows to significantly simplify the code >> for zone report as zone sector values remapping becomes unnecessary. >> >> Patch 5 to 6 are small cleanups and fixes of the null_blk driver zoned >> mode. >> >> The prep patch 7 optimizes zone report buffer allocation for the SCSI >> sd driver. Finally, patch 8 introduces a new interface for report zones >> handling using a callback function executed per zone reported by the >> device. This allows avoiding the need to allocate large arrays of >> blk_zone structures for the execution of zone reports. This can >> significantly reduce memory usage and pressure on the memory management >> system while significantly simplify the code all over. >> >> Overall, this series not only reduces significantly the code size, it >> also improves run-time memory usage for zone report execution. >> >> This series applies cleanly on the for-next block tree on top of the >> zone management operation series. It may however create a conflict with >> Christoph's reqork of disk size revalidation. Please consider this >> series for inclusion in the 5.5 kernel. > > We're taking branching to new levels... I created for-5.5/zoned for this, > which is for-5.5/block + for-5.5/drivers + for-5.5/drivers-post combined. > The latter is a branch with the SCSI dependencies from Martin pulled in. > Jens, Thanks !
On Tue, Nov 12, 2019 at 07:16:39PM -0700, Jens Axboe wrote: > We're taking branching to new levels... I created for-5.5/zoned for this, > which is for-5.5/block + for-5.5/drivers + for-5.5/drivers-post combined. > The latter is a branch with the SCSI dependencies from Martin pulled in. So I guess the report of the partitioning series has to go on top of that? Let me try..