[pve-devel] Default cache mode for VM hard drives

Stanislav German-Evtushenko ginermail at gmail.com
Sat May 30 12:24:16 CEST 2015


> Date: Fri, 29 May 2015 21:14:24 +0200 (CEST)
> From: Dietmar Maurer <dietmar at proxmox.com>
> To: Eric Blevins <ericlb100 at gmail.com>
> Cc: "pve-devel at pve.proxmox.com" <pve-devel at pve.proxmox.com>
> Subject: Re: [pve-devel] Default cache mode for VM hard drives
>
>> Test case inspired by Linbit:
>> http://lists.linbit.com/pipermail/drbd-user/2008-May/009282.html
>>
>> We already know that the swap code has similar behavior. In case
>> a page gets touched while it is under write out IO, the swap allows
>> the modification to the page although it is under IO by the block
>> layer. Therefore the swap code does not know which version actually
>> got written to disk, but it does not care, since it knows that it
>> has the up to date version in core memory.
>
> Oh, interesting - thanks for the link.
>
> So the only problem is that we get an inconsistent state due to live migration?

Not exactly. We get an inconsistent state without involvement of live
migration. But live migration is the one thing which becomes
impossible because of this inconsistency. Also when we have an
inconsistent state we can never be sure that OOS blocks have only
touched swap area. For example, I had OOS blocks on ext4 partition
where Graylog application was operating until I switched the VM to
cache=writethrough.


More information about the pve-devel mailing list