On Tue, Jan 06, 2026 at 03:25:16PM +0100, Michal Privoznik via Devel wrote: > From: Michal Privoznik <[email protected]> > > There is an issue with synic and vpindex enlightenments (fixed in > next commit) which manifests itself only on (some) i440fx machine > types. Switch affected tests to q35.
It also affects q35 machine types at the same version number, as both rely on the "pc_compat_3_0" array that defines the compat properties for x86. With upstream QEMU this change should not matter as we require QEMU >= 5.2.0 and so can assume a bare 'pc' will resolve to a new enough version, and 'q35' will do likewise. With RHEL-9 downstream QEMU, a bare 'pc' will resolve to older affected version (rhel-7.6.0), but does that actually affect the unit tests ? IIUC, we should be using our mocked capabilities and so not see a problem ? > > Signed-off-by: Michal Privoznik <[email protected]> > --- > .../hyperv-host-model.x86_64-latest.args | 9 +++++-- > .../hyperv-host-model.x86_64-latest.xml | 24 ++++++++++++++++--- > tests/qemuxmlconfdata/hyperv-host-model.xml | 4 ++-- > .../qemuxmlconfdata/hyperv.x86_64-latest.args | 9 +++++-- > .../qemuxmlconfdata/hyperv.x86_64-latest.xml | 24 ++++++++++++++++--- > tests/qemuxmlconfdata/hyperv.xml | 4 ++-- > 6 files changed, 60 insertions(+), 14 deletions(-) > > diff --git a/tests/qemuxmlconfdata/hyperv-host-model.x86_64-latest.args > b/tests/qemuxmlconfdata/hyperv-host-model.x86_64-latest.args > index 58502ff51e..d6682f002c 100644 > --- a/tests/qemuxmlconfdata/hyperv-host-model.x86_64-latest.args > +++ b/tests/qemuxmlconfdata/hyperv-host-model.x86_64-latest.args > @@ -10,7 +10,7 @@ > XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-QEMUGuest1/.config \ > -name guest=QEMUGuest1,debug-threads=on \ > -S \ > -object > '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-QEMUGuest1/master-key.aes"}' > \ > --machine pc,usb=off,dump-guest-core=off,memory-backend=pc.ram,acpi=on \ > +-machine q35,usb=off,dump-guest-core=off,memory-backend=pc.ram,acpi=on \ > -accel tcg \ > -cpu > 'qemu64,hv-time=on,hv-relaxed=on,hv-vapic=on,hv-spinlocks=0xfff,hv-vpindex=on,hv-runtime=on,hv-synic=on,hv-stimer=on,hv-stimer-direct=on,hv-reset=on,hv-vendor-id=Linux > KVM > Hv,hv-frequencies=on,hv-reenlightenment=on,hv-tlbflush=on,hv-tlbflush-direct=on,hv-tlbflush-ext=on,hv-ipi=on,hv-avic=on,hv-emsr-bitmap=on,hv-xmm-input=on' > \ > -m size=219136k \ > @@ -26,7 +26,12 @@ > XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-QEMUGuest1/.config \ > -rtc base=utc \ > -no-shutdown \ > -boot strict=on \ > --device > '{"driver":"piix3-usb-uhci","id":"usb","bus":"pci.0","addr":"0x1.0x2"}' \ > +-device > '{"driver":"pcie-root-port","port":8,"chassis":1,"id":"pci.1","bus":"pcie.0","multifunction":true,"addr":"0x1"}' > \ > +-device > '{"driver":"pcie-pci-bridge","id":"pci.2","bus":"pci.1","addr":"0x0"}' \ > +-device > '{"driver":"pcie-root-port","port":9,"chassis":3,"id":"pci.3","bus":"pcie.0","addr":"0x1.0x1"}' > \ > +-device '{"driver":"piix3-usb-uhci","id":"usb","bus":"pci.2","addr":"0x1"}' \ > -audiodev '{"id":"audio1","driver":"none"}' \ > +-global ICH9-LPC.noreboot=off \ > +-watchdog-action reset \ > -sandbox > on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ > -msg timestamp=on > diff --git a/tests/qemuxmlconfdata/hyperv-host-model.x86_64-latest.xml > b/tests/qemuxmlconfdata/hyperv-host-model.x86_64-latest.xml > index 453a43b3c9..537680817f 100644 > --- a/tests/qemuxmlconfdata/hyperv-host-model.x86_64-latest.xml > +++ b/tests/qemuxmlconfdata/hyperv-host-model.x86_64-latest.xml > @@ -5,7 +5,7 @@ > <currentMemory unit='KiB'>219100</currentMemory> > <vcpu placement='static'>6</vcpu> > <os> > - <type arch='x86_64' machine='pc'>hvm</type> > + <type arch='x86_64' machine='q35'>hvm</type> > <boot dev='network'/> > </os> > <features> > @@ -22,12 +22,30 @@ > <devices> > <emulator>/usr/bin/qemu-system-x86_64</emulator> > <controller type='usb' index='0' model='piix3-uhci'> > - <address type='pci' domain='0x0000' bus='0x00' slot='0x01' > function='0x2'/> > + <address type='pci' domain='0x0000' bus='0x02' slot='0x01' > function='0x0'/> > + </controller> > + <controller type='pci' index='0' model='pcie-root'/> > + <controller type='pci' index='1' model='pcie-root-port'> > + <model name='pcie-root-port'/> > + <target chassis='1' port='0x8'/> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' > function='0x0' multifunction='on'/> > + </controller> > + <controller type='pci' index='2' model='pcie-to-pci-bridge'> > + <model name='pcie-pci-bridge'/> > + <address type='pci' domain='0x0000' bus='0x01' slot='0x00' > function='0x0'/> > + </controller> > + <controller type='pci' index='3' model='pcie-root-port'> > + <model name='pcie-root-port'/> > + <target chassis='3' port='0x9'/> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' > function='0x1'/> > + </controller> > + <controller type='sata' index='0'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' > function='0x2'/> > </controller> > - <controller type='pci' index='0' model='pci-root'/> > <input type='mouse' bus='ps2'/> > <input type='keyboard' bus='ps2'/> > <audio id='1' type='none'/> > + <watchdog model='itco' action='reset'/> > <memballoon model='none'/> > </devices> > </domain> > diff --git a/tests/qemuxmlconfdata/hyperv-host-model.xml > b/tests/qemuxmlconfdata/hyperv-host-model.xml > index fae00d86dd..6095ac6fd8 100644 > --- a/tests/qemuxmlconfdata/hyperv-host-model.xml > +++ b/tests/qemuxmlconfdata/hyperv-host-model.xml > @@ -5,7 +5,7 @@ > <currentMemory unit='KiB'>219100</currentMemory> > <vcpu placement='static'>6</vcpu> > <os> > - <type arch='x86_64' machine='pc'>hvm</type> > + <type arch='x86_64' machine='q35'>hvm</type> > <boot dev='network'/> > </os> > <features> > @@ -19,7 +19,7 @@ > <devices> > <emulator>/usr/bin/qemu-system-x86_64</emulator> > <controller type='usb' index='0'/> > - <controller type='pci' index='0' model='pci-root'/> > + <controller type='pci' index='0' model='pcie-root'/> > <input type='mouse' bus='ps2'/> > <input type='keyboard' bus='ps2'/> > <memballoon model='none'/> > diff --git a/tests/qemuxmlconfdata/hyperv.x86_64-latest.args > b/tests/qemuxmlconfdata/hyperv.x86_64-latest.args > index ea4b77de74..2c9716ed93 100644 > --- a/tests/qemuxmlconfdata/hyperv.x86_64-latest.args > +++ b/tests/qemuxmlconfdata/hyperv.x86_64-latest.args > @@ -10,7 +10,7 @@ > XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-QEMUGuest1/.config \ > -name guest=QEMUGuest1,debug-threads=on \ > -S \ > -object > '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-QEMUGuest1/master-key.aes"}' > \ > --machine pc,usb=off,dump-guest-core=off,memory-backend=pc.ram,acpi=on \ > +-machine q35,usb=off,dump-guest-core=off,memory-backend=pc.ram,acpi=on \ > -accel tcg \ > -cpu > 'qemu64,hv-time=on,hv-relaxed=on,hv-vapic=on,hv-spinlocks=0x80000000,hv-vpindex=on,hv-runtime=on,hv-synic=on,hv-stimer=on,hv-reset=on,hv-vendor-id=KVM > > Hv,hv-frequencies=on,hv-reenlightenment=on,hv-tlbflush=on,hv-tlbflush-direct=on,hv-tlbflush-ext=on,hv-ipi=on,hv-evmcs=on,hv-avic=on,hv-emsr-bitmap=on,hv-xmm-input=on' > \ > -m size=219136k \ > @@ -26,7 +26,12 @@ > XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-QEMUGuest1/.config \ > -rtc base=utc \ > -no-shutdown \ > -boot strict=on \ > --device > '{"driver":"piix3-usb-uhci","id":"usb","bus":"pci.0","addr":"0x1.0x2"}' \ > +-device > '{"driver":"pcie-root-port","port":8,"chassis":1,"id":"pci.1","bus":"pcie.0","multifunction":true,"addr":"0x1"}' > \ > +-device > '{"driver":"pcie-pci-bridge","id":"pci.2","bus":"pci.1","addr":"0x0"}' \ > +-device > '{"driver":"pcie-root-port","port":9,"chassis":3,"id":"pci.3","bus":"pcie.0","addr":"0x1.0x1"}' > \ > +-device '{"driver":"piix3-usb-uhci","id":"usb","bus":"pci.2","addr":"0x1"}' \ > -audiodev '{"id":"audio1","driver":"none"}' \ > +-global ICH9-LPC.noreboot=off \ > +-watchdog-action reset \ > -sandbox > on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ > -msg timestamp=on > diff --git a/tests/qemuxmlconfdata/hyperv.x86_64-latest.xml > b/tests/qemuxmlconfdata/hyperv.x86_64-latest.xml > index fdcab661a6..156bbfff21 100644 > --- a/tests/qemuxmlconfdata/hyperv.x86_64-latest.xml > +++ b/tests/qemuxmlconfdata/hyperv.x86_64-latest.xml > @@ -5,7 +5,7 @@ > <currentMemory unit='KiB'>219100</currentMemory> > <vcpu placement='static'>6</vcpu> > <os> > - <type arch='x86_64' machine='pc'>hvm</type> > + <type arch='x86_64' machine='q35'>hvm</type> > <boot dev='network'/> > </os> > <features> > @@ -45,12 +45,30 @@ > <devices> > <emulator>/usr/bin/qemu-system-x86_64</emulator> > <controller type='usb' index='0' model='piix3-uhci'> > - <address type='pci' domain='0x0000' bus='0x00' slot='0x01' > function='0x2'/> > + <address type='pci' domain='0x0000' bus='0x02' slot='0x01' > function='0x0'/> > + </controller> > + <controller type='pci' index='0' model='pcie-root'/> > + <controller type='pci' index='1' model='pcie-root-port'> > + <model name='pcie-root-port'/> > + <target chassis='1' port='0x8'/> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' > function='0x0' multifunction='on'/> > + </controller> > + <controller type='pci' index='2' model='pcie-to-pci-bridge'> > + <model name='pcie-pci-bridge'/> > + <address type='pci' domain='0x0000' bus='0x01' slot='0x00' > function='0x0'/> > + </controller> > + <controller type='pci' index='3' model='pcie-root-port'> > + <model name='pcie-root-port'/> > + <target chassis='3' port='0x9'/> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' > function='0x1'/> > + </controller> > + <controller type='sata' index='0'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' > function='0x2'/> > </controller> > - <controller type='pci' index='0' model='pci-root'/> > <input type='mouse' bus='ps2'/> > <input type='keyboard' bus='ps2'/> > <audio id='1' type='none'/> > + <watchdog model='itco' action='reset'/> > <memballoon model='none'/> > </devices> > </domain> > diff --git a/tests/qemuxmlconfdata/hyperv.xml > b/tests/qemuxmlconfdata/hyperv.xml > index 9a47dd0ec8..2a7d082153 100644 > --- a/tests/qemuxmlconfdata/hyperv.xml > +++ b/tests/qemuxmlconfdata/hyperv.xml > @@ -5,7 +5,7 @@ > <currentMemory unit='KiB'>219100</currentMemory> > <vcpu placement='static'>6</vcpu> > <os> > - <type arch='x86_64' machine='pc'>hvm</type> > + <type arch='x86_64' machine='q35'>hvm</type> > <boot dev='network'/> > </os> > <features> > @@ -42,7 +42,7 @@ > <devices> > <emulator>/usr/bin/qemu-system-x86_64</emulator> > <controller type='usb' index='0'/> > - <controller type='pci' index='0' model='pci-root'/> > + <controller type='pci' index='0' model='pcie-root'/> > <input type='mouse' bus='ps2'/> > <input type='keyboard' bus='ps2'/> > <memballoon model='none'/> > -- > 2.52.0 > With regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
