Hi Vladimir, On Fri, Dec 27, 2019 at 12:13:17PM +0000, Vladimir Sementsov-Ogievskiy wrote: > If we are going to extent the command, I also want a possibility to use 64bit > length for > commands with no payload: write_zero, discard, block_status. > > I just don't remember what was the problems with extending the command > structure, > we already discussed it but somehow it was not simple.. > > Aha, the problem is that it would be completely incompatible extension: we > can't implement > it in a manner that server which don't support it will just reply EINVAL on > extended command, > as it will lose the correct position in the command stream.. > > But I don't think it's the reason to never extend the command. Maybe, the > first step should > be implementing cmd_length field feature, so, if it is negotiated, than all > commands are > extended by cmd_length field which defines the length of the command in the > stream.
I agree that it would be useful to be able to add 64-bit commands to the nbd_request structure at some point. Doing so could be done by having a different magic number for the new type of the request, but only to servers that set a transmission flag to state that they know the new message format. However, that is unrelated to the question that Nir asked, and so I'd like to keep the two separate. -- <Lo-lan-do> Home is where you have to wash the dishes. -- #debian-devel, Freenode, 2004-09-22
