On Fri, Oct 11, 2024 at 10:14:52AM +0200, Christoph Hellwig wrote: > On Thu, Oct 10, 2024 at 02:39:49PM +0200, Matias Bjørling wrote: > > From: Matias Bjørling <matias.bjorling@xxxxxxx> > > > > The NVMe 2.0 specification adds an independent identify namespace > > data structure that contains generic attributes that apply to all > > namespace types. Some attributes carry over from the NVM command set > > identify namespace data structure, and others are new. > > > > Currently, the data structure only considered when CRIMS is enabled or > > when the namespace type is key-value. > > > > However, the independent namespace data structure > > is mandatory for devices that implement features from the 2.0+ > > specification. Therefore, we can check this data structure first. If > > unavailable, retrieve the generic attributes from the NVM command set > > identify namespace data structure. > > FYI, I still disagree with this for the same reason as before. > Assuming we're not really going to see hard drivers I'd be fine > with using it by default for 2.0 (or better even 2.1) by default. I've got the rest of the required logs and identifications implemented in nvmet to support this. There's one more issue, though, if we do restrict the identify to >= 2.0 or 2.1. nvmet reports 1.3, and I suspect there's a bit more work than just changing the value of NVMET_DEFAULT_VS in order to comply with claiming that version.