Re: Fio O_SYNC and libaio on 4.15 kernel doesn't flush data

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Wed, 19 Sep 2018 at 16:56, Захаров Алексей <zakharov.a.g@xxxxxxxxx> wrote:
>
> I'm testing bcache device in ubuntu 16.04 with 4.4 and 4.15 (hwe-edge) kernels and noticed some strange fio behaviour.
> When i run fio with --ioengine=libaio and --sync=1 options - it only works as expected on 4.4 kernel. There're additional flush "write" requests, also to backing device of bcache. If i run it on 4.15 - then iops on caching device are same as fio shows and there're no any io on backing device. But, if i set ioengine to posixaio or sync or even if i set --fsync=1 option, then it works as expected on 4.15 - i can see flush io's.
> It looks like O_SYNC doesn't work with 4.15 when fio runs with libaio.
> Kernel was installed from ubuntu repos, but libaio is used same as for 4.4 kernel and I assume that it is the root cause. But i can't find any proof of this guess.
>
> Have any changes been done in kernel that affect O_SYNC or is it libaio(or fio) bug?
>
> Used fio-2.2.10 and fio-3.9.
>
> Hope for any help with understanding this behaviour.

You didn't include the full job that you ran so it's going to be very
hard for anyone here to say too much... If I understand what you're
saying correctly:

- You ran fio-2.2.10 on an Ubuntu 4.4 kernel with bcache and saw
flushing of writes to the backing disk.
- You ran fio-2.2.10 on an Ubuntu 4.10 kernel with bcache and and no
flushing of write to the backing disk.

Assuming that you haven't changed anything else doesn't that either
suggest there's been a change in how bcache works (it can operate as
a non-volatile write back cache so it doesn't have to flush to backing
on a sync) or that there's an issue with the kernel? How would fio
have known to change things between kernel versions? Another thing to
check would be to see if you see flushes on non-bcache devices...

-- 
Sitsofe | http://sucs.org/~sits/




[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux