Since QEMU and kvm may filter some host CPU features or add efficiently emulated features, asking QEMU binary for host CPU data provides better results when we later use the data for building guest CPUs. Jiri Denemark (7): cpu: Add support for loading and storing CPU data cpu: Export few x86-specific APIs x86: Ignore CPUID functions greater than 10 qemu: Add monitor APIs to fetch CPUID data from QEMU qemu: Make QMP probing process reusable qemu: Probe QEMU binary for host CPU qemu: Use host CPU from QEMU for computations src/cpu/cpu.c | 41 ++++ src/cpu/cpu.h | 13 ++ src/cpu/cpu_x86.c | 161 +++++++++++--- src/cpu/cpu_x86.h | 10 + src/cpu/cpu_x86_data.h | 1 + src/libvirt_private.syms | 9 + src/qemu/qemu_capabilities.c | 234 ++++++++++++++------- src/qemu/qemu_capabilities.h | 2 + src/qemu/qemu_command.c | 32 ++- src/qemu/qemu_domain.c | 21 +- src/qemu/qemu_monitor.c | 21 ++ src/qemu/qemu_monitor.h | 3 + src/qemu/qemu_monitor_json.c | 162 ++++++++++++++ src/qemu/qemu_monitor_json.h | 6 + tests/Makefile.am | 1 + .../qemumonitorjson-getcpu-empty.data | 2 + .../qemumonitorjson-getcpu-empty.json | 46 ++++ .../qemumonitorjson-getcpu-filtered.data | 4 + .../qemumonitorjson-getcpu-filtered.json | 46 ++++ .../qemumonitorjson-getcpu-full.data | 4 + .../qemumonitorjson-getcpu-full.json | 46 ++++ .../qemumonitorjson-getcpu-host.data | 5 + .../qemumonitorjson-getcpu-host.json | 45 ++++ tests/qemumonitorjsontest.c | 74 +++++++ 24 files changed, 881 insertions(+), 108 deletions(-) create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-empty.data create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-empty.json create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-filtered.data create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-filtered.json create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-full.data create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-full.json create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-host.data create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-host.json -- 1.8.3.2 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list