[PATCH v2 05/13] conf: Introduce virtio-mem <memory/> model
David Hildenbrand
david at redhat.com
Mon Feb 22 16:34:02 UTC 2021
On 22.02.21 17:28, Peter Krempa wrote:
> On Mon, Feb 22, 2021 at 16:57:11 +0100, David Hildenbrand wrote:
>> On 22.02.21 16:46, Michal Privoznik wrote:
>>> On 2/18/21 4:00 PM, David Hildenbrand wrote:
>>>> On 18.02.21 14:31, Michal Privoznik wrote:
>
> [...]
>
>> In QEMU, we could make "info balloon" etc. also include virtio-mem provided
>> memory.
>>
>> The main reason I did not do so initially is that
>> 1) It's racy when reading/writing the balloon size. The QEMU interface
>> is broken as we don't get/set the size of the balloon size but
>> instead the logical VM size. While someone sets the logical VM size
>> via virtio-balloon, the logical VM size might change due to virtio-
>> mem guest activity.
>> 2) I don't want people to be tempted to use both at the same
>> time.
>>
>> Maybe the right think to do is make "info balloon" report the current
>> logical VM size. If there are races, bad luck - better not use both things
>> at the same time.
>
> We specifically don't call info balloon or any equivalent nowadays if
> qemu supports the balloon event and we should keep it like that at least
> in terms of the active XML.
>
> The bulk stats functions we have already call the monitor so it's okay
> to do it there.
>
> Both virtio-mem and balloon do have events so we should be able to
> update any required definition bits without an explicit call to the
> balloon info apart from the stats code and the refresh on reconnect.
>
Just to clarify, any BALLOON communication with the outer world
(set/get/balloon_change) are in terms of "logical VM size", not "balloon
size".
logical_vm_size = vm_size - balloon_size
vm_size does currently not include virtio-mem provided memory.
--
Thanks,
David / dhildenb
More information about the libvir-list
mailing list