On Thu, Aug 06, 2020 at 01:35:45PM -0600, Chris Murphy wrote:
virt-manager 'Discard Mode" defaults to "Hypervisor default" but I'm not sure if there's ever a case where this could translate into on/unmap? What problems could result if the guest OS file system mount option were to default to 'discard'? Is it reasonable to expect discards will be inhibited by default because of Discard Mode's default setting? What I'm concerned about is the use case of either raw or qcow2 backing files that have been fully preallocated. If discards pass through to the backing file, they become sparse files, which may be suboptimal due to ensuing fragmentation. Of course it's a trade off, you also gain efficient storage of the backing file - it consumes only what the guest uses. But I think the more compatible behavior is to not do discards out of the box. Someone who wants sparse backing files, I expect, will (a) create sparse backing files and (b) set discard mode to unmap.
And similarly, who wants fully allocated files will fully allocate them and set the mode to `ignore`. What we mean by "hypervisor default" is that we let the underlying hypervisor (in this case only QEMU) decide. The reason for that is that we could not pass any option to the hypervisor before we introduced this option in libvirt and XML definitions from that time must keep working the same way they did before due to our back-compatibility promise. Sometimes we can fill in the default from how it worked before, but most of the time it is more work, mostly because you need to prove that the option you selected was always the case etc. HTH, Martin
Background and genesis of all of this: RFE: kickstart option to control discard configuration https://bugzilla.redhat.com/show_bug.cgi?id=1860720 Thanks, -- Chris Murphy
Description: PGP signature