On 8/19/20 12:11 PM, David Fugate wrote:
On Tue, 2020-08-18 at 07:12 +0000, 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 zone.
I really don't think we should add this. ZNS and the Linux support
were all designed with Zone Append in mind, and then your company did
the nastiest possible move violating the normal NVMe procedures to
make
it optional. But that doesn't change the fact the Linux should keep
requiring it, especially with the amount of code added here and how
it
hooks in the fast path.
Intel does not support making *optional* NVMe spec features *required*
by the NVMe driver.
It's not required, the driver will function quite fine without it. If you
want to use ZNS it's required. The Linux driver thankfully doesn't need
any vendor to sign off on what it can or cannot do, or what features
are acceptable.
It's forgivable WDC's accepted contribution didn't work with other
vendors' devices choosing not to implement the optional Zone Append,
but it's not OK to reject contributions remedying this. Provided
there's no glaring technical issues, Samsung's contribution should be
accepted to maintain both spec compliance as well as vendor neutrality.
It's *always* ok to reject contributions, if those contributions cause
maintainability issues, unacceptable slowdowns, or whatever other issue
that the maintainers of said driver don't want to deal with. Any
contribution should be judged on merit, not based on political decisions
or opinions. Obviously this thread reeks of it.