Messages in this thread | | | Date | Fri, 3 Dec 2021 08:00:14 -0800 | From | Keith Busch <> | Subject | Re: [PATCH v2] nvme: report write pointer for a full zone as zone start + zone len |
| |
On Fri, Nov 26, 2021 at 10:42:44AM +0000, Niklas Cassel wrote: > From: Niklas Cassel <niklas.cassel@wdc.com> > > The write pointer in NVMe ZNS is invalid for a zone in zone state full. > The same also holds true for ZAC/ZBC. > > The current behavior for NVMe is to simply propagate the wp reported by > the drive, even for full zones. Since the wp is invalid for a full zone, > the wp reported by the drive may be any value. > > The way that the sd_zbc driver handles a full zone is to always report > the wp as zone start + zone len, regardless of what the drive reported. > null_blk also follows this convention. > > Do the same for NVMe, so that a BLKREPORTZONE ioctl reports the write > pointer for a full zone in a consistent way, regardless of the interface > of the underlying zoned block device. > > blkzone report before patch: > start: 0x000040000, len 0x040000, cap 0x03e000, wptr 0xfffffffffffbfff8 > reset:0 non-seq:0, zcond:14(fu) [type: 2(SEQ_WRITE_REQUIRED)] > > blkzone report after patch: > start: 0x000040000, len 0x040000, cap 0x03e000, wptr 0x040000 reset:0 > non-seq:0, zcond:14(fu) [type: 2(SEQ_WRITE_REQUIRED)]
Looks good.
Reviewed-by: Keith Busch <kbusch@kernel.org>
| |