Why does 'direct' influence 'fsync'?

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

 



Is there a way to flush the disk write cache when O_DIRECT is in use?

It seems that direct=1 causes the fsync setting to be ignored.  Asias
writes:

> The O_DIRECT do affect the flush behaviour. e.g
> 
> guest$ fio --fsync=100 --direct=1
> No virtio_blk_handle_flush is observed on host side every 100 IOs
> 
> guest$ fio --fsync=100 --direct=0
> virtio_blk_handle_flush is observed on host side every 100 IOs

Am I missing a reason for this behavior?  To me it seems weird since you
could already use --fsync=0 --direct=1 if you want to guarantee that
fsync is not called.  I don't see a need to override the fsync setting.

Stefan
--
To unsubscribe from this list: send the line "unsubscribe fio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[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