All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/10] KVM: x86: Clean up RESET "emulation"
@ 2021-09-21  0:02 Sean Christopherson
  2021-09-21  0:02 ` [PATCH v2 01/10] KVM: x86: Mark all registers as avail/dirty at vCPU creation Sean Christopherson
                   ` (10 more replies)
  0 siblings, 11 replies; 22+ messages in thread
From: Sean Christopherson @ 2021-09-21  0:02 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Sean Christopherson, Vitaly Kuznetsov, Wanpeng Li, Jim Mattson,
	Joerg Roedel, kvm, linux-kernel, Reiji Watanabe

Add dedicated helpers to emulate RESET (or at least, the parts of RESET
that KVM actually emulates) instead of having the relevant code scattered
throughout vcpu_create() and vcpu_reset().

Vitaly's innocuous suggestion to WARN on non-zero CR0 led to a wonderful
bit of git archaeology after, to my complete surprise, it fired on RESET
due to fx_init() setting CR0.ET (and XCR0.FP).

v2:
 - Add patches to drop defunct fx_init() code.
 - Add patch to zero CR3 at RESET/INIT. 
 - Add patch to mark all regs avail/dirty at creation, not at RESET/INIT.
 - Add patch to WARN if CRs are non-zero at RESET. [Vitaly]

v1: https://lkml.kernel.org/r/20210914230840.3030620-1-seanjc@google.com

Sean Christopherson (10):
  KVM: x86: Mark all registers as avail/dirty at vCPU creation
  KVM: x86: Clear KVM's cached guest CR3 at RESET/INIT
  KVM: x86: Do not mark all registers as avail/dirty during RESET/INIT
  KVM: x86: Remove defunct setting of CR0.ET for guests during vCPU
    create
  KVM: x86: Remove defunct setting of XCR0 for guest during vCPU create
  KVM: x86: Fold fx_init() into kvm_arch_vcpu_create()
  KVM: VMX: Drop explicit zeroing of MSR guest values at vCPU creation
  KVM: VMX: Move RESET emulation to vmx_vcpu_reset()
  KVM: SVM: Move RESET emulation to svm_vcpu_reset()
  KVM: x86: WARN on non-zero CRs at RESET to detect improper
    initalization

 arch/x86/kvm/svm/sev.c |  6 ++--
 arch/x86/kvm/svm/svm.c | 29 ++++++++++--------
 arch/x86/kvm/svm/svm.h |  2 +-
 arch/x86/kvm/vmx/vmx.c | 68 ++++++++++++++++++++----------------------
 arch/x86/kvm/x86.c     | 44 +++++++++++++--------------
 5 files changed, 76 insertions(+), 73 deletions(-)

-- 
2.33.0.464.g1972c5931b-goog


^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2021-10-06 23:04 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-21  0:02 [PATCH v2 00/10] KVM: x86: Clean up RESET "emulation" Sean Christopherson
2021-09-21  0:02 ` [PATCH v2 01/10] KVM: x86: Mark all registers as avail/dirty at vCPU creation Sean Christopherson
2021-09-21 13:40   ` Vitaly Kuznetsov
2021-09-21  0:02 ` [PATCH v2 02/10] KVM: x86: Clear KVM's cached guest CR3 at RESET/INIT Sean Christopherson
2021-09-21 13:52   ` Vitaly Kuznetsov
2021-09-21 13:55     ` Vitaly Kuznetsov
2021-09-21 17:35   ` Paolo Bonzini
2021-09-21  0:02 ` [PATCH v2 03/10] KVM: x86: Do not mark all registers as avail/dirty during RESET/INIT Sean Christopherson
2021-09-21  0:02 ` [PATCH v2 04/10] KVM: x86: Remove defunct setting of CR0.ET for guests during vCPU create Sean Christopherson
2021-09-21 14:23   ` Vitaly Kuznetsov
2021-09-21  0:02 ` [PATCH v2 05/10] KVM: x86: Remove defunct setting of XCR0 for guest " Sean Christopherson
2021-09-21 14:37   ` Vitaly Kuznetsov
2021-09-21  0:02 ` [PATCH v2 06/10] KVM: x86: Fold fx_init() into kvm_arch_vcpu_create() Sean Christopherson
2021-09-21 14:52   ` Vitaly Kuznetsov
2021-10-06 23:04     ` Sean Christopherson
2021-09-21  0:03 ` [PATCH v2 07/10] KVM: VMX: Drop explicit zeroing of MSR guest values at vCPU creation Sean Christopherson
2021-09-21 15:02   ` Vitaly Kuznetsov
2021-09-21  0:03 ` [PATCH v2 08/10] KVM: VMX: Move RESET emulation to vmx_vcpu_reset() Sean Christopherson
2021-09-21  0:03 ` [PATCH v2 09/10] KVM: SVM: Move RESET emulation to svm_vcpu_reset() Sean Christopherson
2021-09-21  0:03 ` [PATCH v2 10/10] KVM: x86: WARN on non-zero CRs at RESET to detect improper initalization Sean Christopherson
2021-09-21 13:59   ` Vitaly Kuznetsov
2021-09-23 16:23 ` [PATCH v2 00/10] KVM: x86: Clean up RESET "emulation" Paolo Bonzini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.