Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-20 Thread David Fugate
On Thu, 2020-08-20 at 12:45 +0900, Keith Busch wrote: > For the record, the suggestion provided, which you agreed to look > into, > most broadly enables your hardware on Linux and was entirely to your > benefit. Not quite as dramatic as a political conspiracy. > > You later responded with a

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-20 Thread Javier Gonzalez
On 20.08.2020 13:07, Kanchan Joshi wrote: On Thu, Aug 20, 2020 at 3:22 AM Keith Busch wrote: On Wed, Aug 19, 2020 at 01:11:58PM -0600, David Fugate wrote: > Intel does not support making *optional* NVMe spec features *required* > by the NVMe driver. This is inaccurate. As another example,

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-20 Thread Javier Gonzalez
On 20.08.2020 08:52, Christoph Hellwig wrote: On Thu, Aug 20, 2020 at 08:37:19AM +0200, Javier Gonzalez wrote: We will stop pushing for this emulation. We have a couple of SSDs where we disabled Append, we implemented support for them, and we wanted to push the changes upstream. That's it. This

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-20 Thread Kanchan Joshi
On Thu, Aug 20, 2020 at 3:22 AM Keith Busch wrote: > > On Wed, Aug 19, 2020 at 01:11:58PM -0600, David Fugate wrote: > > Intel does not support making *optional* NVMe spec features *required* > > by the NVMe driver. > > This is inaccurate. As another example, the spec optionally allows a > zone

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-20 Thread Christoph Hellwig
On Thu, Aug 20, 2020 at 08:37:19AM +0200, Javier Gonzalez wrote: > We will stop pushing for this emulation. We have a couple of SSDs where > we disabled Append, we implemented support for them, and we wanted to > push the changes upstream. That's it. This is no politics not a > conspiracy against

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-20 Thread Javier Gonzalez
On 19.08.2020 12:43, Christoph Hellwig wrote: On Wed, Aug 19, 2020 at 09:14:13AM +, Damien Le Moal wrote: While defining a zone append command for SCSI/ZBC is possible (using sense data for returning the written offset), there is no way to define zone append for SATA/ZAC without entirely

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-20 Thread Javier Gonzalez
On 19.08.2020 13:25, Jens Axboe wrote: On 8/19/20 12:11 PM, David Fugate wrote: On Tue, 2020-08-18 at 07:12 +, Christoph Hellwig wrote: On Tue, Aug 18, 2020 at 10:59:36AM +0530, Kanchan Joshi wrote: If drive does not support zone-append natively, enable emulation using regular write. Make

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread Christoph Hellwig
On Wed, Aug 19, 2020 at 05:43:29PM -0600, David Fugate wrote: > There were queries? My key takeaways were a maintainer NAK followed by > instructions to make the Intel drive align with the driver by > implementing NOIOB. While I disagree with the rejection as it appeared > to be based entirely on

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread Christoph Hellwig
On Wed, Aug 19, 2020 at 01:11:58PM -0600, David Fugate wrote: > On Tue, 2020-08-18 at 07:12 +, Christoph Hellwig wrote: > > On Tue, Aug 18, 2020 at 10:59:36AM +0530, Kanchan Joshi wrote: > > > If drive does not support zone-append natively, enable emulation > > > using > > > regular write. > >

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread Keith Busch
On Wed, Aug 19, 2020 at 05:43:29PM -0600, David Fugate wrote: > There were queries? My key takeaways were a maintainer NAK followed by > instructions to make the Intel drive align with the driver by > implementing NOIOB. While I disagree with the rejection as it appeared > to be based entirely on

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread David Fugate
On Wed, 2020-08-19 at 15:10 -0700, Keith Busch wrote: > You're the one who left that thread dangling. You offered to have > your > firmware accommodate the Intel sponsored feature that makes your > patch > unnecessary in the first place. Your follow up made no sense and you > have not responded to

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread Keith Busch
On Wed, Aug 19, 2020 at 03:54:20PM -0600, David Fugate wrote: > On Wed, 2020-08-19 at 13:25 -0600, Jens Axboe wrote: > > It's not required, the driver will function quite fine without it. If > > you > > want to use ZNS it's required. > > The NVMe spec does not require Zone Append for ZNS; a

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread David Fugate
On Wed, 2020-08-19 at 13:25 -0600, Jens Axboe wrote: > It's not required, the driver will function quite fine without it. If > you > want to use ZNS it's required. The NVMe spec does not require Zone Append for ZNS; a *vendor-neutral* Linux driver should not either. > The Linux driver

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread Keith Busch
On Wed, Aug 19, 2020 at 01:11:58PM -0600, David Fugate wrote: > Intel does not support making *optional* NVMe spec features *required* > by the NVMe driver. This is inaccurate. As another example, the spec optionally allows a zone size to be a power of 2, but linux requires a power of 2 if you

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread Jens Axboe
On 8/19/20 12:11 PM, David Fugate wrote: > On Tue, 2020-08-18 at 07:12 +, Christoph Hellwig wrote: >> On Tue, Aug 18, 2020 at 10:59:36AM +0530, Kanchan Joshi wrote: >>> If drive does not support zone-append natively, enable emulation >>> using >>> regular write. >>> Make emulated zone-append

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread David Fugate
On Tue, 2020-08-18 at 07:12 +, Christoph Hellwig wrote: > On Tue, Aug 18, 2020 at 10:59:36AM +0530, Kanchan Joshi wrote: > > If drive does not support zone-append natively, enable emulation > > using > > regular write. > > Make emulated zone-append cmd write-lock the zone, preventing > >

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread Christoph Hellwig
On Wed, Aug 19, 2020 at 10:33:53AM +0200, Javier Gonzalez wrote: > I would ask you to reconsider this position. I have a hard time > understanding how zone append emulation is a good idea in SCSI and not > in NVMe, when there is no performance penalty. Per the numbers on btrfs and zonefs numbers

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread Christoph Hellwig
On Wed, Aug 19, 2020 at 09:14:13AM +, Damien Le Moal wrote: > While defining a zone append command for SCSI/ZBC is possible (using sense > data > for returning the written offset), there is no way to define zone append for > SATA/ZAC without entirely breaking the ATA command model. This is

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread Damien Le Moal
On 2020/08/19 17:34, Javier Gonzalez wrote: > On 19.08.2020 09:40, Christoph Hellwig wrote: >> On Tue, Aug 18, 2020 at 08:04:28PM +0200, Javier Gonzalez wrote: >>> I understand that you want vendor alignment in the NVMe driver and I >>> agree. We are not pushing for a non-append model - you can

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread Javier Gonzalez
On 19.08.2020 09:40, Christoph Hellwig wrote: On Tue, Aug 18, 2020 at 08:04:28PM +0200, Javier Gonzalez wrote: I understand that you want vendor alignment in the NVMe driver and I agree. We are not pushing for a non-append model - you can see that we are investing effort in implementing the

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-19 Thread Christoph Hellwig
On Tue, Aug 18, 2020 at 08:04:28PM +0200, Javier Gonzalez wrote: > I understand that you want vendor alignment in the NVMe driver and I > agree. We are not pushing for a non-append model - you can see that we > are investing effort in implementing the append path in thee block layer > and io_uring

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-18 Thread Javier Gonzalez
On 18.08.2020 10:39, Keith Busch wrote: On Tue, Aug 18, 2020 at 07:29:12PM +0200, Javier Gonzalez wrote: On 18.08.2020 09:58, Keith Busch wrote: > On Tue, Aug 18, 2020 at 11:50:33AM +0200, Javier Gonzalez wrote: > > a number of customers are requiring the use of normal writes, which we > > want

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-18 Thread Javier Gonzalez
On 18.08.2020 12:51, Matias Bjørling wrote: On 18/08/2020 11.50, Javier Gonzalez wrote: On 18.08.2020 09:12, Christoph Hellwig wrote: On Tue, Aug 18, 2020 at 10:59:36AM +0530, Kanchan Joshi wrote: If drive does not support zone-append natively, enable emulation using regular write. Make

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-18 Thread Javier Gonzalez
On 18.08.2020 17:50, Christoph Hellwig wrote: On Tue, Aug 18, 2020 at 11:50:33AM +0200, Javier Gonzalez wrote: I understand that the NVMe process was agitated and that the current ZNS implementation in Linux relies in append support from the device perspective. However, the current TP does

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-18 Thread Keith Busch
On Tue, Aug 18, 2020 at 07:29:12PM +0200, Javier Gonzalez wrote: > On 18.08.2020 09:58, Keith Busch wrote: > > On Tue, Aug 18, 2020 at 11:50:33AM +0200, Javier Gonzalez wrote: > > > a number of customers are requiring the use of normal writes, which we > > > want to support. > > > > A device that

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-18 Thread Javier Gonzalez
On 18.08.2020 09:58, Keith Busch wrote: On Tue, Aug 18, 2020 at 11:50:33AM +0200, Javier Gonzalez wrote: a number of customers are requiring the use of normal writes, which we want to support. A device that supports append is completely usable for those customers, too. There's no need to

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-18 Thread Keith Busch
On Tue, Aug 18, 2020 at 11:50:33AM +0200, Javier Gonzalez wrote: > a number of customers are requiring the use of normal writes, which we > want to support. A device that supports append is completely usable for those customers, too. There's no need to create divergence in this driver.

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-18 Thread Christoph Hellwig
On Tue, Aug 18, 2020 at 11:50:33AM +0200, Javier Gonzalez wrote: > I understand that the NVMe process was agitated and that the current ZNS > implementation in Linux relies in append support from the device > perspective. However, the current TP does allow for not implementing > append, and a

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-18 Thread Matias Bjørling
On 18/08/2020 11.50, Javier Gonzalez wrote: On 18.08.2020 09:12, Christoph Hellwig wrote: On Tue, Aug 18, 2020 at 10:59:36AM +0530, Kanchan Joshi wrote: If drive does not support zone-append natively, enable emulation using regular write. Make emulated zone-append cmd write-lock the zone,

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-18 Thread Javier Gonzalez
On 18.08.2020 09:12, Christoph Hellwig wrote: On Tue, Aug 18, 2020 at 10:59:36AM +0530, Kanchan Joshi wrote: If drive does not support zone-append natively, enable emulation using regular write. Make emulated zone-append cmd write-lock the zone, preventing concurrent append/write on the same

Re: [PATCH 2/2] nvme: add emulation for zone-append

2020-08-18 Thread Christoph Hellwig
On Tue, Aug 18, 2020 at 10:59:36AM +0530, Kanchan Joshi wrote: > If drive does not support zone-append natively, enable emulation using > regular write. > Make emulated zone-append cmd write-lock the zone, preventing > concurrent append/write on the same zone. I really don't think we should add

[PATCH 2/2] nvme: add emulation for zone-append

2020-08-17 Thread Kanchan Joshi
If drive does not support zone-append natively, enable emulation using regular write. Make emulated zone-append cmd write-lock the zone, preventing concurrent append/write on the same zone. To determine the start-lba for such writes, an array of 32 bit zone-relative write-pointer (WP) positions