On Fri, Aug 12, 2022 at 01:01:37PM +0200, Niklas Cassel wrote: > The intention of the Zoned Namespace Command Set Specification was > never to make an automatic zone transition optional. > > Excerpt from the nvmexpress.org zns mailing list: > """ > A question came up internally on the differences between ZNS and ZAC/ZBC > that asked about when a controller should transitions a specific zone in > the Implicitly Opened state to Closed state. > > For example, consider a ZNS SSD that supports a max of 20 active zones, > and a max of 10 open zones, which has the following actions occur: > > First, the host writes to ten empty zones, thereby transitioning 10 zones > to the Implicitly Opened state. > > Second, the host issues a write to an 11th empty zone. > > Given that state, my understanding of the second part is that the ZNS SSD > chooses one of the previously 10 zones, and transition the chosen zone to > the Closed state, and then proceeds to write to the new zone which also > implicitly transition it from the Empty state to the Impl. Open state. > After this, there would be 11 active zones in total, 10 in impl. Open > state, and one in closed state. > > The above assumes that a ZNS SSD will always transition an implicitly > opened zone to closed state when required to free up resources when > another zone is opened. However, it isn’t strictly said in the ZNS spec. > > The paragraph that should cover it is defined in section > 2.1.1.4.1 – Managing Resources: > The controller may transition zones in the ZSIO:Implicitly Opened state > to the ZSC:Closed state for resource management purposes. > > However, it doesn’t say “when” it should occur. Thus, as the text stand, > it could be misinterpreted that the controller shouldn’t do close a zone > to make room for a new zone. The issue with this, is that it makes the > point of having implicitly managed zones moot. > > The ZAC/ZBC specs is more specific and clarifies when a zone should be > closed. I think it would be natural to the same here. > """ > > While the Zoned Namespace Command Set Specification hasn't received an > errata yet, it is quite clear that the intention was that an automatic > zone transition was never supposed to be optional, as then the whole > point of having implictly open zones would be pointless. Therefore, > remove the param zoned.auto_transition, as this was never supposed to > be controller implementation specific. > > Signed-off-by: Niklas Cassel <niklas.cas...@wdc.com> > ---
Gentle ping. Kind regards, Niklas