From: Isaku Yamahata <isaku.yamahata@xxxxxxxxx> So far the processor compatibility check is not done for newly added CPU. It should be done. Signed-off-by: Isaku Yamahata <isaku.yamahata@xxxxxxxxx> --- virt/kvm/kvm_arch.c | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/virt/kvm/kvm_arch.c b/virt/kvm/kvm_arch.c index 2ed8de0591c9..20971f43df95 100644 --- a/virt/kvm/kvm_arch.c +++ b/virt/kvm/kvm_arch.c @@ -99,9 +99,15 @@ __weak int kvm_arch_del_vm(int usage_count) __weak int kvm_arch_online_cpu(unsigned int cpu, int usage_count) { - if (usage_count) - return __hardware_enable(); - return 0; + int r; + + if (!usage_count) + return 0; + + r = kvm_arch_check_processor_compat(); + if (r) + return r; + return __hardware_enable(); } __weak int kvm_arch_offline_cpu(unsigned int cpu, int usage_count) @@ -126,6 +132,10 @@ __weak int kvm_arch_suspend(int usage_count) __weak void kvm_arch_resume(int usage_count) { - if (usage_count) - (void)__hardware_enable(); + if (!usage_count) + return; + + if (kvm_arch_check_processor_compat()) + return; /* FIXME: disable KVM */ + (void)__hardware_enable(); } -- 2.25.1