Re: [PATCH] KVM: x86: don't reset root in kvm_mmu_setup()

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

 



On Tue, Sep 04, 2018 at 06:29:10PM +0300, Liran Alon wrote:
>
>
>> On 4 Sep 2018, at 18:24, Wei Yang <richard.weiyang@xxxxxxxxx> wrote:
>> 
>> On Tue, Sep 04, 2018 at 04:21:40AM -0700, Liran Alon wrote:
>>> 
>>> ----- richard.weiyang@xxxxxxxxx wrote:
>>> 
>>>> Here is the code path which shows kvm_mmu_setup() is invoked after
>>>> kvm_mmu_create(). Since kvm_mmu_setup() is only invoked in this code
>>>> path,
>>>> this means the root_hpa and prev_roots are setup properly. And it is
>>>> not
>>>> necessary to reset it again.
>>>> 
>>>>    kvm_vm_ioctl_create_vcpu()
>>>>        kvm_arch_vcpu_create()
>>>>            vmx_create_vcpu()
>>>>                kvm_vcpu_init()
>>>>                    kvm_arch_vcpu_init()
>>>>                        kvm_mmu_create()
>>>>        kvm_arch_vcpu_setup()
>>>>            kvm_mmu_setup()
>>>>                kvm_init_mmu()
>>>> 
>>>> This patch set reset_roots to false in kmv_mmu_setup().
>>>> 
>>>> Signed-off-by: Wei Yang <richard.weiyang@xxxxxxxxx>
>>>> ---
>>>> arch/x86/kvm/mmu.c | 2 +-
>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>> 
>>>> diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c
>>>> index a282321329b5..28da8a9bd37b 100644
>>>> --- a/arch/x86/kvm/mmu.c
>>>> +++ b/arch/x86/kvm/mmu.c
>>>> @@ -5413,7 +5413,7 @@ void kvm_mmu_setup(struct kvm_vcpu *vcpu)
>>>> {
>>>> 	MMU_WARN_ON(VALID_PAGE(vcpu->arch.mmu.root_hpa));
>>>> 
>>>> -	kvm_init_mmu(vcpu, true);
>>>> +	kvm_init_mmu(vcpu, false);
>>>> }
>>>> 
>>>> static void kvm_mmu_invalidate_zap_pages_in_memslot(struct kvm *kvm,
>>>> -- 
>>>> 2.15.1
>>> 
>>> I would also add a comment in code.
>>> Reviewed-by: Liran Alon <liran.alon@xxxxxxxxxx>
>> 
>> Thanks for your comment.
>> 
>> Hmm... do you have any suggestion about the comment? Like the changelog?
>
>Nothing fancy, something like:
>/*
> * kvm_mmu_setup() is called only on vCPU initialization.
> * Therefore, no need to reset mmu roots as they are not yet initialized.
> */

Ah, that's nice. Let me add this in next version.

Thanks~

>
>> 
>> -- 
>> Wei Yang
>> Help you, Help me

-- 
Wei Yang
Help you, Help me



[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