$ gdb /usr/bin/qemu-system-x86_64 (gdb) handle SIGUSR1 noprint nostop (gdb) b qemu_init_main_loop (gdb) run -m 128 -M pc-i440fx-wily,accel=kvm --nodefaults --nographic --monitor stdio -device virtio-balloon-pci,id=balloon0 Thread 1 "qemu-system-x86" hit Breakpoint 3, qemu_init_main_loop (errp=0x7fffffffe468) at ./util/main-loop.c:148 (gdb) set $i=62 (gdb) p (*(GlobalProperty*)(object_compat_props[1]).pdata[$i++])
# 56 is where hw_compat_2_10 starts in Focal and that tail is what needs to match in Bionic and earlier
Effective compats in place for wily at 4.2 as of today (from gdb): "virtio-mouse-device" "wheel-axis" "false", used = false, optional = false "virtio-tablet-device" "wheel-axis" "false", used = false, optional = false "e1000" "romfile" "compat-256k-efi-e1000.rom", used = false, optional = false "ne2000" "romfile" "compat-256k-efi-ne2k_pci.rom", used = false, optional = false "pcnet" "romfile" "compat-256k-efi-pcnet.rom", used = false, optional = false "rtl8139" "romfile" "compat-256k-efi-rtl8139.rom", used = false, optional = false "virtio-net-pci" "romfile" "compat-256k-efi-virtio.rom", used = false, optional = false "x86_64-cpu" "x-hv-max-vps" "0x40", used = false, optional = false "i440FX-pcihost" "x-pci-hole64-fix" "off", used = false, optional = false "q35-pcihost" "x-pci-hole64-fix" "off", used = false, optional = false "pci-bridge" "shpc" "off", used = false, optional = false "intel-iommu" "pt" "off", used = false, optional = false "virtio-net-device" "x-mtu-bypass-backend" "off", used = false, optional = false "pcie-root-port" "x-migrate-msix" "false", used = false, optional = false "mch" "extended-tseg-mbytes" "0", used = false, optional = false "fw_cfg_mem" "x-file-slots" "0x10", used = false, optional = false "fw_cfg_io" "x-file-slots" "0x10", used = false, optional = false "pflash_cfi01" "old-multiple-chip-handling" "on", used = false, optional = false "pci-bridge" "shpc" "on", used = false, optional = false "pci-device" "x-pcie-extcap-init" "off", used = false, optional = false "virtio-pci" "x-pcie-deverr-init" "off", used = false, optional = false "virtio-pci" "x-pcie-lnkctl-init" "off", used = false, optional = false "virtio-pci" "x-pcie-pm-init" "off", used = false, optional = false "cirrus-vga" "vgamem_mb" "8", used = false, optional = false "isa-cirrus-vga" "vgamem_mb" "8", used = false, optional = false "x86_64-cpu" "tcg-cpuid" "off", used = false, optional = false "kvmclock" "x-mach-use-reliable-get-clock" "off", used = false, optional = false "ICH9-LPC" "x-smi-broadcast" "off", used = false, optional = false "x86_64-cpu" "vmware-cpuid-freq" "off", used = false, optional = false "Haswell-x86_64-cpu" "stepping" "1", used = false, optional = false "virtio-pci" "page-per-vq" "on", used = false, optional = false "virtio-serial-device" "emergency-write" "off", used = false, optional = false "ioapic" "version" "0x11", used = false, optional = false "intel-iommu" "x-buggy-eim" "true", used = false, optional = false "virtio-pci" "x-ignore-backend-features" "on", used = false, optional = false "x86_64-cpu" "l3-cache" "off", used = false, optional = false "x86_64-cpu" "full-cpuid-auto-level" "off", used = false, optional = false "Opteron_G3-x86_64-cpu" "family" "15", used = false, optional = false "Opteron_G3-x86_64-cpu" "model" "6", used = false, optional = false "Opteron_G3-x86_64-cpu" "stepping" "1", used = false, optional = false "isa-pcspk" "migrate" "off", used = false, optional = false "virtio-mmio" "format_transport_address" "off", used = false, optional = false "virtio-pci" "disable-modern" "on", used = false, optional = true "virtio-pci" "disable-legacy" "off", used = false, optional = true "x86_64-cpu" "cpuid-0xb" "off", used = false, optional = false "vmxnet3" "romfile" "", used = false, optional = false "x86_64-cpu" "fill-mtrr-mask" "off", used = false, optional = false "apic-common" "legacy-instance-id" "on", used = false, optional = false "isa-fdc" "fallback" "144", used = false, optional = false "pvscsi" "x-old-pci-configuration" "on", used = false, optional = false "pvscsi" "x-disable-pcie" "on", used = false, optional = false "vmxnet3" "x-old-msi-offsets" "on", used = false, optional = false "vmxnet3" "x-disable-pcie" "on", used = false, optional = false "virtio-blk-device" "scsi" "true", used = false, optional = false "e1000" "extra_mac_registers" "off", used = false, optional = false "virtio-pci" "x-disable-pcie" "on", used = false, optional = false "virtio-pci" "migrate-extra" "off", used = false, optional = false "fw_cfg_mem" "dma_enabled" "off", used = false, optional = false "fw_cfg_io" "dma_enabled" "off", used = false, optional = false "qemu32-x86_64-cpu" "model-id" "QEMU Virtual CPU version 2.4.0", used = false, optional = false "qemu64-x86_64-cpu" "model-id" "QEMU Virtual CPU version 2.4.0", used = false, optional = false "athlon-x86_64-cpu" "model-id" "QEMU Virtual CPU version 2.4.0", used = false, optional = false "Haswell-x86_64-cpu" "abm" "off", used = false, optional = false "Haswell-noTSX-x86_64-cpu" "abm" "off", used = false, optional = false "Broadwell-x86_64-cpu" "abm" "off", used = false, optional = false "Broadwell-noTSX-x86_64-cpu" "abm" "off", used = false, optional = false "host-x86_64-cpu" "host-cache-info" "on", used = false, optional = false "x86_64-cpu" "check" "off", used = false, optional = false "qemu64-x86_64-cpu" "sse4a" "on", used = false, optional = false "qemu64-x86_64-cpu" "abm" "on", used = false, optional = false "qemu64-x86_64-cpu" "popcnt" "on", used = false, optional = false "qemu32-x86_64-cpu" "popcnt" "on", used = false, optional = false "Opteron_G2-x86_64-cpu" "rdtscp" "on", used = false, optional = false "Opteron_G3-x86_64-cpu" "rdtscp" "on", used = false, optional = false "Opteron_G4-x86_64-cpu" "rdtscp" "on", used = false, optional = false "Opteron_G5-x86_64-cpu" "rdtscp" "on", used = false, optional = false "virtio-blk-pci" "any_layout" "off", used = false, optional = false "virtio-balloon-pci" "any_layout" "off", used = false, optional = false "virtio-serial-pci" "any_layout" "off", used = false, optional = false "virtio-9p-pci" "any_layout" "off", used = false, optional = false "virtio-rng-pci" "any_layout" "off", used = false, optional = false "pci-device" "x-pcie-lnksta-dllla" "off", used = false, optional = false "migration" "send-configuration" "off", used = false, optional = false "migration" "send-section-footer" "off", used = false, optional = false "migration" "store-global-state" "off", used = false, optional = false "qemu32-x86_64-cpu" "model-id" "QEMU Virtual CPU version 2.3.0", used = false, optional = false "qemu64-x86_64-cpu" "model-id" "QEMU Virtual CPU version 2.3.0", used = false, optional = false "athlon-x86_64-cpu" "model-id" "QEMU Virtual CPU version 2.3.0", used = false, optional = false "x86_64-cpu" "arat" "off", used = false, optional = false "qemu64-x86_64-cpu" "min-level" "4", used = false, optional = false "kvm64-x86_64-cpu" "min-level" "5", used = false, optional = false "pentium3-x86_64-cpu" "min-level" "2", used = false, optional = false "n270-x86_64-cpu" "min-level" "5", used = false, optional = false "Conroe-x86_64-cpu" "min-level" "4", used = false, optional = false "Penryn-x86_64-cpu" "min-level" "4", used = false, optional = false "Nehalem-x86_64-cpu" "min-level" "4", used = false, optional = false "n270-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false "Penryn-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false "Conroe-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false "Nehalem-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false "Westmere-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false "SandyBridge-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false "IvyBridge-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false "Haswell-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false "Haswell-noTSX-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false "Broadwell-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false "Broadwell-noTSX-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false "x86_64-cpu" "kvm-no-smi-migration" "on", used = false, optional = false
$ gdb /usr/bin/ qemu-system- x86_64 wily,accel= kvm --nodefaults --nographic --monitor stdio -device virtio- balloon- pci,id= balloon0 fe468) at ./util/ main-loop. c:148 ty*)(object_ compat_ props[1] ).pdata[ $i++])
(gdb) handle SIGUSR1 noprint nostop
(gdb) b qemu_init_main_loop
(gdb) run -m 128 -M pc-i440fx-
Thread 1 "qemu-system-x86" hit Breakpoint 3, qemu_init_main_loop (errp=0x7ffffff
(gdb) set $i=62
(gdb) p (*(GlobalProper
# 56 is where hw_compat_2_10 starts in Focal and that tail is what needs to match in Bionic and earlier
Effective compats in place for wily at 4.2 as of today (from gdb): mouse-device" "wheel-axis" "false", used = false, optional = false tablet- device" "wheel-axis" "false", used = false, optional = false 256k-efi- e1000.rom" , used = false, optional = false 256k-efi- ne2k_pci. rom", used = false, optional = false 256k-efi- pcnet.rom" , used = false, optional = false 256k-efi- rtl8139. rom", used = false, optional = false 256k-efi- virtio. rom", used = false, optional = false bypass- backend" "off", used = false, optional = false tseg-mbytes" "0", used = false, optional = false chip-handling" "on", used = false, optional = false extcap- init" "off", used = false, optional = false deverr- init" "off", used = false, optional = false lnkctl- init" "off", used = false, optional = false use-reliable- get-clock" "off", used = false, optional = false x86_64- cpu" "stepping" "1", used = false, optional = false serial- device" "emergency-write" "off", used = false, optional = false backend- features" "on", used = false, optional = false auto-level" "off", used = false, optional = false G3-x86_ 64-cpu" "family" "15", used = false, optional = false G3-x86_ 64-cpu" "model" "6", used = false, optional = false G3-x86_ 64-cpu" "stepping" "1", used = false, optional = false transport_ address" "off", used = false, optional = false instance- id" "on", used = false, optional = false pci-configurati on" "on", used = false, optional = false mac_registers" "off", used = false, optional = false x86_64- cpu" "abm" "off", used = false, optional = false noTSX-x86_ 64-cpu" "abm" "off", used = false, optional = false x86_64- cpu" "abm" "off", used = false, optional = false noTSX-x86_ 64-cpu" "abm" "off", used = false, optional = false G2-x86_ 64-cpu" "rdtscp" "on", used = false, optional = false G3-x86_ 64-cpu" "rdtscp" "on", used = false, optional = false G4-x86_ 64-cpu" "rdtscp" "on", used = false, optional = false G5-x86_ 64-cpu" "rdtscp" "on", used = false, optional = false balloon- pci" "any_layout" "off", used = false, optional = false lnksta- dllla" "off", used = false, optional = false tion" "off", used = false, optional = false footer" "off", used = false, optional = false global- state" "off", used = false, optional = false x86_64- cpu" "min-level" "2", used = false, optional = false x86_64- cpu" "min-level" "4", used = false, optional = false x86_64- cpu" "min-xlevel" "0x8000000a", used = false, optional = false x86_64- cpu" "min-xlevel" "0x8000000a", used = false, optional = false x86_64- cpu" "min-xlevel" "0x8000000a", used = false, optional = false x86_64- cpu" "min-xlevel" "0x8000000a", used = false, optional = false x86_64- cpu" "min-xlevel" "0x8000000a", used = false, optional = false noTSX-x86_ 64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false x86_64- cpu" "min-xlevel" "0x8000000a", used = false, optional = false noTSX-x86_ 64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false smi-migration" "on", used = false, optional = false
"virtio-
"virtio-
"e1000" "romfile" "compat-
"ne2000" "romfile" "compat-
"pcnet" "romfile" "compat-
"rtl8139" "romfile" "compat-
"virtio-net-pci" "romfile" "compat-
"x86_64-cpu" "x-hv-max-vps" "0x40", used = false, optional = false
"i440FX-pcihost" "x-pci-hole64-fix" "off", used = false, optional = false
"q35-pcihost" "x-pci-hole64-fix" "off", used = false, optional = false
"pci-bridge" "shpc" "off", used = false, optional = false
"intel-iommu" "pt" "off", used = false, optional = false
"virtio-net-device" "x-mtu-
"pcie-root-port" "x-migrate-msix" "false", used = false, optional = false
"mch" "extended-
"fw_cfg_mem" "x-file-slots" "0x10", used = false, optional = false
"fw_cfg_io" "x-file-slots" "0x10", used = false, optional = false
"pflash_cfi01" "old-multiple-
"pci-bridge" "shpc" "on", used = false, optional = false
"pci-device" "x-pcie-
"virtio-pci" "x-pcie-
"virtio-pci" "x-pcie-
"virtio-pci" "x-pcie-pm-init" "off", used = false, optional = false
"cirrus-vga" "vgamem_mb" "8", used = false, optional = false
"isa-cirrus-vga" "vgamem_mb" "8", used = false, optional = false
"x86_64-cpu" "tcg-cpuid" "off", used = false, optional = false
"kvmclock" "x-mach-
"ICH9-LPC" "x-smi-broadcast" "off", used = false, optional = false
"x86_64-cpu" "vmware-cpuid-freq" "off", used = false, optional = false
"Haswell-
"virtio-pci" "page-per-vq" "on", used = false, optional = false
"virtio-
"ioapic" "version" "0x11", used = false, optional = false
"intel-iommu" "x-buggy-eim" "true", used = false, optional = false
"virtio-pci" "x-ignore-
"x86_64-cpu" "l3-cache" "off", used = false, optional = false
"x86_64-cpu" "full-cpuid-
"Opteron_
"Opteron_
"Opteron_
"isa-pcspk" "migrate" "off", used = false, optional = false
"virtio-mmio" "format_
"virtio-pci" "disable-modern" "on", used = false, optional = true
"virtio-pci" "disable-legacy" "off", used = false, optional = true
"x86_64-cpu" "cpuid-0xb" "off", used = false, optional = false
"vmxnet3" "romfile" "", used = false, optional = false
"x86_64-cpu" "fill-mtrr-mask" "off", used = false, optional = false
"apic-common" "legacy-
"isa-fdc" "fallback" "144", used = false, optional = false
"pvscsi" "x-old-
"pvscsi" "x-disable-pcie" "on", used = false, optional = false
"vmxnet3" "x-old-msi-offsets" "on", used = false, optional = false
"vmxnet3" "x-disable-pcie" "on", used = false, optional = false
"virtio-blk-device" "scsi" "true", used = false, optional = false
"e1000" "extra_
"virtio-pci" "x-disable-pcie" "on", used = false, optional = false
"virtio-pci" "migrate-extra" "off", used = false, optional = false
"fw_cfg_mem" "dma_enabled" "off", used = false, optional = false
"fw_cfg_io" "dma_enabled" "off", used = false, optional = false
"qemu32-x86_64-cpu" "model-id" "QEMU Virtual CPU version 2.4.0", used = false, optional = false
"qemu64-x86_64-cpu" "model-id" "QEMU Virtual CPU version 2.4.0", used = false, optional = false
"athlon-x86_64-cpu" "model-id" "QEMU Virtual CPU version 2.4.0", used = false, optional = false
"Haswell-
"Haswell-
"Broadwell-
"Broadwell-
"host-x86_64-cpu" "host-cache-info" "on", used = false, optional = false
"x86_64-cpu" "check" "off", used = false, optional = false
"qemu64-x86_64-cpu" "sse4a" "on", used = false, optional = false
"qemu64-x86_64-cpu" "abm" "on", used = false, optional = false
"qemu64-x86_64-cpu" "popcnt" "on", used = false, optional = false
"qemu32-x86_64-cpu" "popcnt" "on", used = false, optional = false
"Opteron_
"Opteron_
"Opteron_
"Opteron_
"virtio-blk-pci" "any_layout" "off", used = false, optional = false
"virtio-
"virtio-serial-pci" "any_layout" "off", used = false, optional = false
"virtio-9p-pci" "any_layout" "off", used = false, optional = false
"virtio-rng-pci" "any_layout" "off", used = false, optional = false
"pci-device" "x-pcie-
"migration" "send-configura
"migration" "send-section-
"migration" "store-
"qemu32-x86_64-cpu" "model-id" "QEMU Virtual CPU version 2.3.0", used = false, optional = false
"qemu64-x86_64-cpu" "model-id" "QEMU Virtual CPU version 2.3.0", used = false, optional = false
"athlon-x86_64-cpu" "model-id" "QEMU Virtual CPU version 2.3.0", used = false, optional = false
"x86_64-cpu" "arat" "off", used = false, optional = false
"qemu64-x86_64-cpu" "min-level" "4", used = false, optional = false
"kvm64-x86_64-cpu" "min-level" "5", used = false, optional = false
"pentium3-
"n270-x86_64-cpu" "min-level" "5", used = false, optional = false
"Conroe-x86_64-cpu" "min-level" "4", used = false, optional = false
"Penryn-x86_64-cpu" "min-level" "4", used = false, optional = false
"Nehalem-
"n270-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false
"Penryn-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false
"Conroe-x86_64-cpu" "min-xlevel" "0x8000000a", used = false, optional = false
"Nehalem-
"Westmere-
"SandyBridge-
"IvyBridge-
"Haswell-
"Haswell-
"Broadwell-
"Broadwell-
"x86_64-cpu" "kvm-no-