[PATCH v3 00/15] Introduce virtio-mem <memory/> model
David Hildenbrand
david at redhat.com
Thu Jun 17 12:55:08 UTC 2021
On 17.06.21 14:42, Peter Krempa wrote:
> On Thu, Jun 17, 2021 at 14:34:21 +0200, David Hildenbrand wrote:
>> On 17.06.21 14:17, Peter Krempa wrote:
>>> On Thu, Jun 17, 2021 at 14:03:44 +0200, David Hildenbrand wrote:
>
> [...]
>
>>
>> 4. QEMU does no longer require a "slots" specification when maxmem is set
>> (because virtio-based memory devices don't require ACPI memory module
>> slots).
>>
>> Specifying "<maxMemory unit='KiB'>20971520</maxMemory>" results in (IMHO
>> confusing) error:
>>
>> "error: XML document failed to validate against schema: Unable to
>> validate doc against /usr/local/share/libvirt/schemas/domain.rng
>> Extra element maxMemory in interleave
>> Invalid sequence in interleave
>> Element domain failed to validate content"
>>
>>
>> "Extra element maxMemory in interleave
>> Invalid sequence in interleave
>> Element domain failed to validate content"
>
> This is because the XML schema for maxMemory requires the element.
> Unfortunately the XML schema validator from libxml2 has extremely
> user-unfriendly errors.
>
>> Specifying "<maxMemory slots='0' unit='KiB'>20971520</maxMemory>" results in
>> "error: XML error: both maximum memory size and memory slot count must
>> be specified"
>
> This is the error from the XML parser which has human-crafter errors.
>
>> However, older QEMU version have that requirement. Supported since 3.0 I
>> think:
>>
>> $ git tag --contains 951f2269af2
>> ...
>> v3.0.0
>> ...
>
> Is there a way how to detect that it's not needed? E.g. via the QMP
> schema or such?
>
> In this instance we could perhaps drop it and let qemu report the error
> ... well if it's reasonable though.
>
I guess only implicitly, for example, if virtio-mem-pci or
virtio-pmem-pci are possible (I assume supported devices can be queried
via QMP). And without these devices, it doesn't make sense to have
"slots=0".
virtio-pmem-pci was introduced with v4.1.0, virtio-mem-pci was
introduced with v5.1.0.
--
Thanks,
David / dhildenb
More information about the libvir-list
mailing list