Port-xen archive

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

Re: cache sync on zvols - other problems?



gdt%lexort.com@localhost (Greg Troxel) writes:

>> Can anyone explain when xen decides to call DIOCCACHESYNC?  Is that when
>> there is a corresponding cache flush disk command from the domU?

>still a valid question :-)

We just relay a DIOCCACHESYNC on xbd (DomU) to the backend device (Dom0),
in case of a file backend that's a vnd instance that will issue a fsync
operation including a cache flush.


>> My guess is that cache flushing is pretty expensive and that a scheme
>> that does flushes when soundness says is going to be trouble, but I
>> really am unclear on the details.

Cache flushing can be expensive as you have to wait for the physical
I/O to complete and it usually stalls other I/O requests. But the
overhead depends on how much real I/O (mostly the O) is combined with
it.

Usually we do that when closing a disk device (e.g. last umount) but
WAPL does it when flushing the journal (unless disabled with
vfs.wapbl.flush_disk_cache=0).

ZFS flushes the cache as part of the zil_commit() operation.



Home | Main Index | Thread Index | Old Index