Re: [PATCH] kvm: mmu: Simplify judgment conditions

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

 



On Tue, Jul 26, 2022, Hao Peng wrote:
> From: Peng Hao <flyingpeng@xxxxxxxxxxx>
> 
> kvm_shadow_root_allocated() has been checked before in
> mmu_first_shadow_root_alloc,
> and subsequent kvm_memslots_have_rmaps() does not need to check
> kvm_shadow_root_allocated() again.

Heh, this has come up before[*].  I agree with Paolo that checking for rmaps is
more intuitive than checking for !TDP MMU.  I'm not sure I agree about dropping
the check entirely though, it just seems like we'll end up back here again, i.e.
someone will inevitably propose optimizing the case where KVM has already allocated
rmaps and gfn_track.

[*] https://lore.kernel.org/all/c31a5f84-6da2-c6a0-c0cd-9f6802c39fc3@xxxxxxxxxx

> Signed-off-by: Peng Hao <flyingpeng@xxxxxxxxxxx>
> ---
>  arch/x86/kvm/mmu/mmu.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/x86/kvm/mmu/mmu.c b/arch/x86/kvm/mmu/mmu.c
> index 52664c3caaab..ecd64c06f839 100644
> --- a/arch/x86/kvm/mmu/mmu.c
> +++ b/arch/x86/kvm/mmu/mmu.c
> @@ -3584,7 +3584,7 @@ static int mmu_first_shadow_root_alloc(struct kvm *kvm)
>          * Check if anything actually needs to be allocated, e.g. all metadata
>          * will be allocated upfront if TDP is disabled.
>          */
> -       if (kvm_memslots_have_rmaps(kvm) &&
> +       if (!is_tdp_mmu_enabled(kvm) &&
>             kvm_page_track_write_tracking_enabled(kvm))
>                 goto out_success;
> 
> --
> 2.27.0



[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