Since v4: - Addressed Paolo's suggestions (clearly better) Too many system-specific code (and in particular KVM related) is pulled in user-only build. This led to adding unjustified stubs as kludge to unagressive linker non-optimizations. This series restrict x86 system-specific features to sysemu, so we don't require any stub, and remove all x86 KVM declarations from user emulation code (to trigger compile failure instead of link one). Philippe Mathieu-Daudé (6): target/i386: Check kvm_hyperv_expand_features() return value target/i386: Drop accel_uses_host_cpuid before x86_cpu_get_supported_cpuid target/i386: Call accel-agnostic x86_cpu_get_supported_cpuid() target/i386: Move x86_cpu_get_migratable_flags() around RFC target/i386: Restrict system-specific code from user emulation target/i386: Prohibit target specific KVM prototypes on user emulation target/i386/kvm/kvm_i386.h | 4 ++ target/i386/cpu.c | 134 +++++++++++++++++++++++-------------- 2 files changed, 88 insertions(+), 50 deletions(-) -- 2.41.0