Hi Cathy, I was going to test these patches. But it did not apply on my tree. Tried on kvm(https://git.kernel.org/pub/scm/virt/kvm/kvm.git) and Mainline (https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git). What is your base tree? thanks Babu > -----Original Message----- > From: Cathy Avery <cavery@xxxxxxxxxx> > Sent: Monday, October 26, 2020 12:42 PM > To: linux-kernel@xxxxxxxxxxxxxxx; kvm@xxxxxxxxxxxxxxx; pbonzini@xxxxxxxxxx > Cc: vkuznets@xxxxxxxxxx; Huang2, Wei <Wei.Huang2@xxxxxxx>; > mlevitsk@xxxxxxxxxx; sean.j.christopherson@xxxxxxxxx > Subject: [PATCH v3 0/2] KVM: SVM: Create separate vmcbs for L1 and L2 > > svm->vmcb will now point to either a separate vmcb L1 ( not nested ) or L2 vmcb > ( nested ). > > Changes: > v2 -> v3 > - Added vmcb switching helper. > - svm_set_nested_state always forces to L1 before determining state > to set. This is more like vmx and covers any potential L2 to L2 nested state > switch. > - Moved svm->asid tracking to pre_svm_run and added ASID set dirty bit > checking. > > v1 -> v2 > - Removed unnecessary update check of L1 save.cr3 during nested_svm_vmexit. > - Moved vmcb01_pa to svm. > - Removed get_host_vmcb() function. > - Updated vmsave/vmload corresponding vmcb state during L2 > enter and exit which fixed the L2 load issue. > - Moved asid workaround to a new patch which adds asid to svm. > - Init previously uninitialized L2 vmcb save.gpat and save.cr4 > > Tested: > kvm-unit-tests > kvm self tests > Loaded fedora nested guest on fedora > > Cathy Avery (2): > KVM: SVM: Track asid from vcpu_svm > KVM: SVM: Use a separate vmcb for the nested L2 guest > > arch/x86/kvm/svm/nested.c | 125 ++++++++++++++++++-------------------- > arch/x86/kvm/svm/svm.c | 58 +++++++++++------- > arch/x86/kvm/svm/svm.h | 51 +++++----------- > 3 files changed, 110 insertions(+), 124 deletions(-) > > -- > 2.20.1