[cifs-protocol] [REG:117031615465515] [MS-SMB2] Question wrt to copy-chunk ioctl
obaidf at microsoft.com
Mon Mar 20 15:58:34 UTC 2017
Here is what I found out about Windows server:
Windows server follows the order in which the client has sent the request i.e. the first chuck will be read and written and then second and so on. This can also be inferred by the snippet of MS-SMB2 in your question i.e. " .... starting with the first chunk received in the Chunks field, the server MUST copy each chunk from the source file to the destination file in an implementation-specific manner. ...".
So that explains why in your test the copy always happens in sequence as specified in the request.
In regards to your question "what is the expectation here from a protocol perspective and will a real world Windows client ever issue such requests that require ordering ?", The client does not do the ordering. It is the calling application that does the ordering as specified in MS-SMB2. Please note the last bullet:
184.108.40.206.2.2 Application Requests a Server Side Data Copy
The application provides:
§ A handle to the Open identifying the destination file.
§ The FSCTL code for the server side copy, either FSCTL_SRV_COPYCHUNK or FSCTL_SRV_COPYCHUNK_WRITE.<132>
§ The key for the source file queried, as specified in the previous section "Application Requests a Source File Key".
§ An array of ranges to copy. Each item in the array MUST contain the source offset, the destination offset, and the number of bytes to copy.
Please let me know if this does not answer your question.
If it does answer your question, please let me know if you have any further question.
Escalation Engineer | Microsoft
Exceeding your expectations is my highest priority. If you would like to provide feedback on your case you may contact my manager at ramagane at Microsoft dot com
From: Ralph Böhme [mailto:slow at samba.org]
Sent: Friday, March 17, 2017 2:06 AM
To: Obaid Farooqi <obaidf at microsoft.com>
Cc: Ralph Böhme <slow at samba.org>; cifs-protocol at lists.samba.org; MSSolve Case Email <casemail at microsoft.com>
Subject: Re: [REG:117031615465515] [MS-SMB2] Question wrt to copy-chunk ioctl
On Thu, Mar 16, 2017 at 10:34:23PM +0000, Obaid Farooqi wrote:
> Can you please send me a network trace of this test?
Please note that it contains a successfull test case where the data was written in the expected order. I only got the failure once in a full testsuite run on our dedicated CI build machine, so I don't have a trace of a failure.
More information about the cifs-protocol