On Tue, May 28, 2024 at 16:26:18 -0600, Jim Fehlig via Devel wrote:
Hi All,
I vaguely recall a discussion about $subject, but can't find it now. Perhaps
buried in another thread. The topic has been raised internally again, and
I'd like to gauge the community's interest in automatically adding the
necessary devices/config when user has specified vcpus > 255.
The comparison for prior art is a bit of a stretch, but we e.g. add
<audio
type='spice'/> when spice graphics is configured.
The thing about 'audio' "device" is that it's purely just backend
with
no impact on the VM ABI. In fact 'audio' and 'graphics' IMO should not
have been put under <devices> for that reason.
I know libvirt has
generally tried to avoid policy decisions, but it's not clear to me where we
stand with cases such as this, where every x86 VM with > 255 vcpus needs a
similarly configured iommu.
Adding the IOMMU would change the guest ABI, so libvirt can't auto-add
it, unless a VM with > 255 cpus would not start at all.
In case of IOMMU the absence of the element means that the user doesn't
want an IOMMU, rather than that it was not configured, so you'd have no
way to express a configuration where > 255 cpus are declared but no
IOMMU was used to start it. Migrating such a config would then break.