Re: Data Corruption bug with Samba's vfs_iouring and Linux 5.6.7/5.7rc3

Jens Axboe
2020-05-05T17:50:08Z

On 5/5/20 11:48 AM, Jeremy Allison wrote:
> On Tue, May 05, 2020 at 11:39:14AM -0600, Jens Axboe wrote:
>>>
>>> I'll try and see if I can get an arch binary build that has the
>>> vfs_io_uring module and reproduce.
>>
>> Got that done, and I can now mount it on Linux. Been trying pretty
>> hard to trigger any corruptions on reads, but it works for me. Checked
>> that we see short reads, and we do, and that it handles it just fine.
>> So pretty blank right now on what this could be.
>>
>> FWIW, I'm mounting on Linux as:
>>
>> # mount -t cifs -o ro,guest //arch/data /smb
>
> The reporter claims this only happens with
> a Windows client, as the Linux and Samba libsmb
> clients don't pipeline the reads in the same
> way for multiple files the same way that Windows
> does.
>
> Here is the bug report with all the details I've
> managed to get out of the original reporter:
>
> https://bugzilla.samba.org/show_bug.cgi?id=14361
>
> I also can't reproduce the data corruption, even
> from a Windows client although I've only tried
> so far on my home Ubuntu 19.04 kernel 5.3.0-51-generic #44-Ubuntu SMP
> box.
>
> I tried running 2 powershell processes on the
> Windows client and doing a copy in both of them
> to ensure we are opening multiple files simultaneously
> and going through the io_uring module (which I
> saw happening by adding debug statements) but
> I never see corruption.
>
> I'm planning to try running against a Fedora32
> VM next, as that's case the reporter claims will
> reproduce the issue.
>
> Thanks for helping me look at this !

Thanks for the detailed reply! If you figure out a way to
reproduce on Linux, please send me a note and I'll be happy
to dive further into this.

--
Jens Axboe