> From: Sasha Levin
> Sent: Tuesday, July 05, 2011 7:09 AM
> 
> Instead of exiting quietly, print an error if the VMX or the SVM bits
> were already set when loading the module.
> 
> Having VMX/SVM bits set means that either there is someone else doing
> hardware virtualization, or that the BIOS is buggy and sets it on
> by default.
> 
> Cc: Avi Kivity <a...@redhat.com>
> Cc: Marcelo Tosatti <mtosa...@redhat.com>
> Signed-off-by: Sasha Levin <levinsasha...@gmail.com>
> ---
>  arch/x86/kvm/svm.c |    5 ++++-
>  arch/x86/kvm/vmx.c |    4 +++-
>  2 files changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c
> index 5ca76e3..2a1df2e 100644
> --- a/arch/x86/kvm/svm.c
> +++ b/arch/x86/kvm/svm.c
> @@ -590,8 +590,11 @@ static int svm_hardware_enable(void *garbage)
>       int me = raw_smp_processor_id();
> 
>       rdmsrl(MSR_EFER, efer);
> -     if (check_inuse && (efer & EFER_SVME))
> +     if (check_inuse && (efer & EFER_SVME)) {
> +             printk(KERN_ERR "svm_hardware_enable: SVM already set
> on %d\n",
> +                    me);
>               return -EBUSY;
> +     }
> 
>       if (!has_svm()) {
>               printk(KERN_ERR "svm_hardware_enable: err EOPNOTSUPP
> on %d\n",
> diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
> index 3046b07..df69b1d 100644
> --- a/arch/x86/kvm/vmx.c
> +++ b/arch/x86/kvm/vmx.c
> @@ -2233,8 +2233,10 @@ static int hardware_enable(void *garbage)
>       u64 phys_addr = __pa(per_cpu(vmxarea, cpu));
>       u64 old, test_bits;
> 
> -     if (check_inuse && (read_cr4() & X86_CR4_VMXE))
> +     if (check_inuse && (read_cr4() & X86_CR4_VMXE)) {
> +             printk(KERN_ERR "hardware_enable: VMX already set\n");
>               return -EBUSY;
> +     }
> 

make the error message consistent between vmx and svm, i.e. adding
cpu id for vmx too.

Thanks
Kevin
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to