[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <b9a36adb-7754-ebd4-0db0-f2219215a976@redhat.com>
Date: Wed, 19 Dec 2018 22:20:49 +0100
From: Paolo Bonzini <pbonzini@...hat.com>
To: Vitaly Kuznetsov <vkuznets@...hat.com>, kvm@...r.kernel.org
Cc: Radim Krčmář <rkrcmar@...hat.com>,
linux-kernel@...r.kernel.org,
Tom Lendacky <thomas.lendacky@....com>,
Joerg Roedel <joro@...tes.org>
Subject: Re: [PATCH] KVM: x86: nSVM: fix switch to guest mmu
On 19/12/18 17:25, Vitaly Kuznetsov wrote:
> Recent optimizations in MMU code broke nested SVM with NPT in L1
> completely: when we do nested_svm_{,un}init_mmu_context() we want
> to switch from TDP MMU to shadow MMU, both init_kvm_tdp_mmu() and
> kvm_init_shadow_mmu() check if re-configuration is needed by looking
> at cache source data. The data, however, doesn't change - it's only
> the type of the MMU which changes. We end up not re-initializing
> guest MMU as shadow and everything goes off the rails.
>
> The issue could have been fixed by putting MMU type into extended MMU
> role but this is not really needed. We can just split root and guest MMUs
> the exact same way we did for nVMX, their types never change in the
> lifetime of a vCPU.
>
> There is still room for improvement: currently, we reset all MMU roots
> when switching from L1 to L2 and back and this is not needed.
>
> Fixes: 7dcd57552008 ("x86/kvm/mmu: check if tdp/shadow MMU reconfiguration is needed")
> Signed-off-by: Vitaly Kuznetsov <vkuznets@...hat.com>
I'm queueing this to kvm-master. Radim, please pick the other patches
from him to kvm/next and let me know when you're done---the tree is
yours; I'll handle the merge window pull request.
Paolo
Powered by blists - more mailing lists