On Nov 10, 2022 / 17:31, Damien Le Moal wrote: > On 11/10/22 17:19, hch@xxxxxxxxxxxxx wrote: > > On Thu, Nov 10, 2022 at 02:20:09AM +0000, Shinichiro Kawasaki wrote: > >> My point was to make the check strictly follow the ZBC spec. But now I see that > >> it's the better to keep enforcing 16 byte commands to host-aware devices. I will > >> drop the first patch and revise the second patch to enforce SYNC 16 on both > >> host-aware and host-managed devices. > > > > We don't "enforce" anything. We just don't send the legacy commands for > > devices that are guaranteed to be modern. I see, the word "enforce" was not a good choice. Will rephrase it in v3. > > What is the advantage of > > ever sending 10 bytes commands (inluding SYNCHRONIZE CACHE) to a modern > > device? > > The ZBC specs define SYNC 16 as optional while SYNC 10 is mandatory. So > the device may not support SYNC 16 and we would get an invalid opcode > error. For SYNC, no advantages between SYNC 10 and SYNC 16. Not even > sure why they both exist. The point here is making sure we use the one > that the drive MUST support. That is, SYNC 16 for host managed and SYNC > 10 for host aware (but these likely all also support SYNC 16, but we > cannot be sure of it). Damien, thanks for the explanation. I think Christoph, Damien and I are on the same page: we should call 16 byte WRITE/READ/SYNC commands to modern devices. And both host-managed and host-aware ZBC devices are the modern devices. Will prepare v3 based on this understanding. -- Shin'ichiro Kawasaki