linux_dsm_epyc7002/arch/x86/kvm
Tom Lendacky 0fc5deae03 KVM: SVM: Remove unneeded WBINVD and DF_FLUSH when starting SEV guests
Performing a WBINVD and DF_FLUSH are expensive operations. The SEV support
currently performs this WBINVD/DF_FLUSH combination when an SEV guest is
terminated, so there is no need for it to be done before LAUNCH.

However, when the SEV firmware transitions the platform from UNINIT state
to INIT state, all ASIDs will be marked invalid across all threads.
Therefore, as part of transitioning the platform to INIT state, perform a
WBINVD/DF_FLUSH after a successful INIT in the PSP/SEV device driver.
Since the PSP/SEV device driver is x86 only, it can reference and use the
WBINVD related functions directly.

Cc: Gary Hook <gary.hook@amd.com>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: "David S. Miller" <davem@davemloft.net>
Tested-by: David Rientjes <rientjes@google.com>
Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2019-10-22 13:34:08 +02:00
..
vmx KVM: nVMX: Always write vmcs02.GUEST_CR3 during nested VM-Enter 2019-10-22 13:34:07 +02:00
cpuid.c kvm: x86: Expose RDPID in KVM_GET_SUPPORTED_CPUID 2019-10-22 13:31:12 +02:00
cpuid.h
debugfs.c KVM: no need to check return value of debugfs_create functions 2019-08-05 12:55:49 +02:00
emulate.c KVM: x86: set ctxt->have_exception in x86_decode_insn() 2019-09-11 18:01:34 +02:00
hyperv.c KVM: x86: hyper-v: set NoNonArchitecturalCoreSharing CPUID bit when SMT is impossible 2019-09-24 13:37:30 +02:00
hyperv.h
i8254.c
i8254.h
i8259.c
ioapic.c kvm: x86: ioapic and apic debug macros cleanup 2019-07-15 20:39:01 +02:00
ioapic.h
irq_comm.c KVM/arm updates for 5.3 2019-07-11 15:14:16 +02:00
irq.c
irq.h KVM/arm updates for 5.3 2019-07-11 15:14:16 +02:00
Kconfig
kvm_cache_regs.h
lapic.c KVM: LAPIC: Loosen filter for adaptive tuning of lapic_timer_advance_ns 2019-09-26 12:31:29 +02:00
lapic.h KVM: LAPIC: Tune lapic_timer_advance_ns smoothly 2019-09-24 14:35:06 +02:00
Makefile
mmu_audit.c
mmu.c KVM: x86: fix nested guest live migration with PML 2019-09-27 13:13:39 +02:00
mmu.h KVM: x86/mmu: Add explicit access mask for MMIO SPTEs 2019-08-22 10:09:24 +02:00
mmutrace.h KVM: x86/mmu: Explicitly track only a single invalid mmu generation 2019-09-24 14:36:00 +02:00
mtrr.c
page_track.c
paging_tmpl.h KVM/arm updates for 5.3 2019-07-11 15:14:16 +02:00
pmu_amd.c
pmu.c KVM: x86: Add fixed counters to PMU filter 2019-07-20 09:00:48 +02:00
pmu.h
svm.c KVM: SVM: Remove unneeded WBINVD and DF_FLUSH when starting SEV guests 2019-10-22 13:34:08 +02:00
trace.h KVM: nVMX: trace nested VM-Enter failures detected by H/W 2019-09-11 17:34:17 +02:00
tss.h
x86.c kvm: clear kvmclock MSR on reset 2019-10-22 13:31:22 +02:00
x86.h KVM: x86: Move triple fault request into RM int injection 2019-09-24 14:31:20 +02:00