In the vfs pages for aio_pthread, it gives as an example for aio read/write size, 1024 for each and states an "appropriate" value must be set. Byt in smb.conf it states that the only reasonable values are 0 or 1 (also that there's a default = 1 so no value need be given explicitly). Which of these is correct? Thanks, Stilez
On Thu, Mar 08, 2018 at 09:00:48PM +0000, Stilez via samba wrote:> In the vfs pages for aio_pthread, it gives as an example for aio read/write > size, 1024 for each and states an "appropriate" value must be set. > > Byt in smb.conf it states that the only reasonable values are 0 or 1 (also > that there's a default = 1 so no value need be given explicitly). > > Which of these is correct?Both :-). Back before we fixed the bug where MacOS-X violates the SMB2 spec by chaining a open/write/close without expecting the write to go async then setting 1024 was the "correct" thing to do to allow Mac's to write their version of SMB2 symlinks. Now we've fixed that bug, and it's safe to always do async reads/writes, then setting them to 0 (always off) and 1 (always on) is really the only two settings you need.
Meanwhile it appears to contradict. Is there any reason not to update the vfs doc to reflect the old situation pre-bugfix and the current suggested values? On 8 March 2018 9:28:30 pm Jeremy Allison <jra at samba.org> wrote:> On Thu, Mar 08, 2018 at 09:00:48PM +0000, Stilez via samba wrote: >> In the vfs pages for aio_pthread, it gives as an example for aio read/write >> size, 1024 for each and states an "appropriate" value must be set. >> >> Byt in smb.conf it states that the only reasonable values are 0 or 1 (also >> that there's a default = 1 so no value need be given explicitly). >> >> Which of these is correct? > > Both :-). Back before we fixed the bug where MacOS-X violates > the SMB2 spec by chaining a open/write/close without expecting > the write to go async then setting 1024 was the "correct" thing > to do to allow Mac's to write their version of SMB2 symlinks. > > Now we've fixed that bug, and it's safe to always do async > reads/writes, then setting them to 0 (always off) and 1 (always on) > is really the only two settings you need.
On a related note: Some time ago, you instructed a user to use the following aio_pthread parameter: aio_pthread:aio open = true This is not undocumented in the man page. Does the parameter have any effect, and what is the effect? Although I tried for a while, I couldn't locate your original message. I don't remember whether it was posted on bugzilla or on a mailing list, but I am positive this instruction was given to someone because I took a note of the parameter, then.