Comment 0 for bug 1828288

Revision history for this message
Rafael David Tinoco (rafaeldtinoco) wrote :

When using latest QEMU (-proposed) in Xenial you might encounter the following problem when trying to initialize your guests:

----

(c)inaddy@qemubug:~$ apt-cache policy qemu-system-x86
qemu-system-x86:
  Installed: 1:2.5+dfsg-5ubuntu10.37
  Candidate: 1:2.5+dfsg-5ubuntu10.37
  Version table:
 *** 1:2.5+dfsg-5ubuntu10.37 500
        500 http://ubuntu.c3sl.ufpr.br//ubuntu xenial-proposed/main amd64 Packages
        100 /var/lib/dpkg/status
     1:2.5+dfsg-5ubuntu10.36 500
        500 http://ubuntu.c3sl.ufpr.br//ubuntu xenial-updates/main amd64 Packages
     1:2.5+dfsg-5ubuntu10 500
        500 http://ubuntu.c3sl.ufpr.br/ubuntu xenial/main amd64 Packages

----

(c)inaddy@qemubug:~$ virsh list --all
 Id Name State
----------------------------------------------------
 - kdebian shut off
 - kguest shut off

(c)inaddy@qemubug:~$ virsh start --console kguest
error: Failed to start domain kguest
error: internal error: process exited while connecting to monitor: warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 0]
warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 1]
warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 2]
warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 3]
warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 4]
warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 5]
warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 6]
warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 7]
warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 8]
warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 9]
warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 12]
warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 13]
warning: host doesn't support requested feature: CPU

----

This happens because x86_cpu_get_migratable_flags() does not support CPUID_EXT2_AMD_ALIASES. After cherry-picking upstream patch 9997cf7bdac056aeed246613639675c5a9f8fdc2, that moves CPUID_EXT2_AMD_ALIASES code to after x86_cpu_filter_features(), the problem is fixed. Other QEMU versions are properly fixed and don't face this issue.

Cherry-picking commit and re-building the package makes it to work:
----

(c)inaddy@qemubug:~$ virsh start --console kguest
Domain kguest started
Connected to domain kguest
Escape character is ^]
[ 0.000000] Linux version 4.19.0-4-amd64 (<email address hidden>) (gcc version 8.3.0 (Debian 8.3.0-2)) #1
SMP Debian 4.19.28-2 (2019-03-15)
[ 0.000000] Command line: root=/dev/vda noresume console=tty0 console=ttyS0,38400n8 apparmor=0 net.ifnames=0 crashkernel=256M
[ 0.000000] random: get_random_u32 called from bsp_init_amd+0x20b/0x2b0 with crng_init=0
[ 0.000000] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
[ 0.000000] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
[ 0.000000] x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
[ 0.000000] x86/fpu: xstate_offset[2]: 576, xstate_sizes[2]: 256
[ 0.000000] x86/fpu: Enabled xstate features 0x7, context size is 832 bytes, using 'standard' format.
...