Interop Issue: SMB2+ async replies, and the kernel, Samba side fix enclosed.

Jeremy Allison jra at samba.org
Wed Feb 24 19:04:08 UTC 2016


On Tue, Feb 23, 2016 at 11:41:34PM -0500, Ira Cooper wrote:
> You'll find it easy to reproduce if you:
> 
> Set  aio read size = 1 in smb.conf.
> 
> And modify line 101 in smb2_read.c or close by to be:
> 
>     return smbd_smb2_request_pending_queue(req, subreq, 1);
> 
> Writing a 1 GB file, umounting the share, and mounting the share again,
> then using dd to read it back with rsize and wsize set to 1MB, should do it.
> 
> We can reproduce it as is with Gluster, I suspect that may be enough to do
> it with XFS or other filesystems.
> 
> Does anyone know what the windows timeout for sending the interim reply
> is?  Barring this bug, sending it when we don't have to is wasteful.

Hmmm. We can only test this by causing a Windows read to
take a long time. Any idea how to test this ? Does Win32
have named pipes in the fs we could use for that ? If not
we could test using a program that creates a \\pipe\named_pipe
and then responds slowly... But I don't know if the
timeout replies on np's are the same as in the filesystem.



More information about the samba-technical mailing list