Thanks @paelzer for this bug report !

I took a look and here is my observation:

I can confirm that we have indeed a VM migration issue to Questing 
qemu-10.1/libvirt-11.6 from
older couple of qemu/libvirt versions. As of now, I use Plucky as the start 
host of the migration
(with qemu-9.2/libvirt 11.0) but other Ubuntnu releases are also affected as 
@cpaelzer already pointed out. 

The issue is currently observed on a HPE ProLiant DL360 Gen9 (Intel CPU 
Haswell) but it should
be generalized to other Intel CPUs recent enough with either pdcm or 
arch-capabilities available.

Here is the software setup:
- Host HPE Proliant DL360 + Ubuntu Plucky 25.04
- On that host, a container running Ubuntu Questing 25.10
  + with ssh keys deploy to the container for SSH access
  + potentially with /etc/hosts properly configured if necessary (if virsh 
migrate complains about 
    hostname resolution)


$ cat guest.xml
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>test-migration</name>
  <memory unit='GiB'>2</memory>
  <os>
    <type arch='x86_64' machine='q35'>hvm</type>
  </os>
  <cpu mode='host-model' check='partial'/>
</domain>

$ virsh define guest.xml
$ virsh start test-migration
$ virsh migrate --unsafe --live test-migration qemu+ssh://10.105.100.156/system
(10.105.100.156 is the IP of the Questing container)

You will get this error:

error: operation failed: guest CPU doesn't match specification: missing
features: pdcm,arch-capabilities

Based on my current understanding, the issue can be broken down to 2
separated issues, each one is related to 1 missing feature : pdcm, arch-
capabilities

Indeed, on the same host with Plucky we can see that both features are 
available. It can be observed via several ways:
- virsh dumpxml test-migration
- cpuid (and look for PDCM and ARCH)

However, on the same host with Questing, these features somehow are marked as 
unavailable by the couple QEMU/libvirt.
This can be proven if you go to the container and create the VM:

$ virsh define guest.xml
$ virsh start test-migration
$ virsh dumpxml test-migration | grep -E "pdcm|arch-capabilities"
    <feature policy='disable' name='pdcm'/>

We can see that arch-capabilities not showing up and pdcm is marked
"disable".

arch-capabilities
-----------------

I took a look at the QEMU source code and identified this recent commit
in the QEMU v10.1:

target/i386: do not expose ARCH_CAPABILITIES on AMD CPU 
https://github.com/qemu/qemu/commit/d3a24134e37d57abd3e7445842cda2717f49e96d

When I revert back this commit, the error about arch-capabilities is
gone.

$ virsh migrate --unsafe --live test-migration qemu+ssh://10.105.100.156/system 
error: operation failed: guest CPU doesn't match specification: missing 
features: pdcm

pdcm
----
TODO

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2121787

Title:
  Cross release migration broken to questing (q 10.1/ lv 11.6) -
  "missing features: pdcm,arch-capabilities"

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/qemu/+bug/2121787/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to