lkml.org 
[lkml]   [2021]   [Jan]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v2 0/3] VMX: more nested fixes
From
Date
On 14/01/21 21:54, Maxim Levitsky wrote:
> This is hopefully the last fix for VMX nested migration
> that finally allows my stress test of migration with a nested guest to pass.
>
> In a nutshell after an optimization that was done in commit 7952d769c29ca,
> some of vmcs02 fields which can be modified by the L2 freely while it runs
> (like GSBASE and such) were not copied back to vmcs12 unless:
>
> 1. L1 tries to vmread them (update done on intercept)
> 2. vmclear or vmldptr on other vmcs are done.
> 3. nested state is read and nested guest is running.
>
> What wasn't done was to sync these 'rare' fields when L1 is running
> but still has a loaded vmcs12 which might have some stale fields,
> if that vmcs was used to enter a guest already due to that optimization.
>
> Plus I added two minor patches to improve VMX tracepoints
> a bit. There is still a large room for improvement.
>
> Best regards,
> Maxim Levitsky
>
> Maxim Levitsky (3):
> KVM: nVMX: Always call sync_vmcs02_to_vmcs12_rare on migration
> KVM: nVMX: add kvm_nested_vmlaunch_resume tracepoint
> KVM: VMX: read idt_vectoring_info a bit earlier
>
> arch/x86/kvm/trace.h | 30 ++++++++++++++++++++++++++++++
> arch/x86/kvm/vmx/nested.c | 19 ++++++++++++++-----
> arch/x86/kvm/vmx/vmx.c | 3 ++-
> arch/x86/kvm/x86.c | 1 +
> 4 files changed, 47 insertions(+), 6 deletions(-)
>

I committed patch 1 since I need to send it out to Linus quite soonish,
but please adjust and resend the others based on Sean's review.

Paolo

\
 
 \ /
  Last update: 2021-01-21 16:04    [W:0.090 / U:0.904 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site