Re: IA32_FEATURE_CONTROL MSR in nested virt

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



OK, I will write a patch as what Paolo says. Anything else need to be taken into consideration, Paolo?

Arthur Chunqi Li
Department of Computer Science
School of EECS
Peking University
Beijing, China

>From my iPhone

在 2013-7-3,17:14,Gleb Natapov <gleb@xxxxxxxxxx> 写道:

> On Wed, Jul 03, 2013 at 04:24:33PM +0800, Arthur Chunqi Li wrote:
>> Hi Gleb and Paolo,
>> When I write test cases for nested virt and found that reading/writing
>> IA32_FEATURE_CONTROL will be simply ignored or return 0 (in
>> arch/x86/kvm/vmx.c) in VM. Checking this MSR will be done by some
>> hypervisors (e.g. NOVA) and may cause error then, so it is necessary
>> to behave right when read/write it in VM.
> NOVA cannot write to it and expect anything but #GP since BIOSes usually
> lock the MSR. So I agree with Paolo about returning 5 on read and #GP on
> write. Later we can implement locking functionality and make BIOS
> enable/disable nested vmx.
> 
>> Are there any difficulties to handle this MSR? I have two solutions.
>> The first one is return the value of physical CPU's and always return
>> true when write. This is simple but may behave as if it is a VM
>> because write to it after VMXON will not return GP exception. This
>> solution can solve most basic problems since this MSR is not commonly
>> used. Another solution is adding a field in VCPU to handle this MSR.
>> This is a complex but better method.
>> 
>> I think I can complete this if needed.
>> 
>> Thanks,
>> Arthur
>> 
>> --
>> Arthur Chunqi Li
>> Department of Computer Science
>> School of EECS
>> Peking University
>> Beijing, China
> 
> --
>            Gleb.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux