Re: [fuse-devel] Horrible mmap write performance (kernel writeback issue?)

From: Miklos Szeredi
Date: Mon Mar 28 2016 - 15:46:00 EST


On Sat, Mar 26, 2016 at 10:42 PM, Jakob Unterwurzacher
<jakobunt@xxxxxxxxx> wrote:
> On 16.03.2016 10:44, Miklos Szeredi wrote:
>> On Tue, Mar 15, 2016 at 8:55 AM, Jakob Unterwurzacher
>> <jakobunt@xxxxxxxxx> wrote:
>>> Just for anybody finding this thread: This still happens in v4.4, it
>>> just took longer to trigger.
>>>
>>> I have posted more details to linux-kernel (copy-pasted below),
>>> http://thread.gmane.org/gmane.linux.kernel/2132944
>>
>> Okay, so you can reproduce this relatively quickly. Can you try "git
>> bisect" to find exactly which commit is responsible?
>>
>> Thanks,
>> Miklos
>
> That took a while, but it looks like it got it:
>
>> commit 947e9762a8ddefda38aa21e249e6a4fec215cd12
>> Author: Tejun Heo <tj@xxxxxxxxxx>
>> Date: Fri May 22 18:23:32 2015 -0400
>>
>> writeback: update wb_over_bg_thresh() to use wb_domain aware operations
>

Tejun,

Any idea why this commit stalls fuse mmap writes?

Here's the start of the this thread:

http://marc.info/?l=fuse-devel&m=145008058603261&w=2

Thanks,
Miklos


> Note that this commens seems to only activate changes that happened in the
> commit before, aa661bb:
>
>> commit aa661bbe1e61ce80ca4ae98804f673ede94b0827
>> Author: Tejun Heo <tj@xxxxxxxxxx>
>> Date: Fri May 22 18:23:31 2015 -0400
>>
>> writeback: move over_bground_thresh() to mm/page-writeback.c
>
>
> Anyway, I can reliably reboot between aa661bb and 947e976 and always get the
> same results:
>
> aa661bb passes
> 947e976 fails
>
> I you want to reproduce, clone https://github.com/rfjakob/mmapwrite.git and
> run ./encfs-test.sh (needs encfs installed). On the bad kernel, it will hang
> within a few seconds.
>
> Thanks,
> Jakob