linux_dsm_epyc7002/arch/x86/kvm
Sean Christopherson 69c6f69aa3 KVM: x86: Set kvm_x86_ops only after ->hardware_setup() completes
Set kvm_x86_ops with the vendor's ops only after ->hardware_setup()
completes to "prevent" using kvm_x86_ops before they are ready, i.e. to
generate a null pointer fault instead of silently consuming unconfigured
state.

An alternative implementation would be to have ->hardware_setup()
return the vendor's ops, but that would require non-trivial refactoring,
and would arguably result in less readable code, e.g. ->hardware_setup()
would need to use ERR_PTR() in multiple locations, and each vendor's
declaration of the runtime ops would be less obvious.

No functional change intended.

Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com>
Message-Id: <20200321202603.19355-6-sean.j.christopherson@intel.com>
Reviewed-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-03-31 10:48:07 -04:00
..
mmu KVM: x86: rename set_cr3 callback and related flags to load_mmu_pgd 2020-03-16 17:58:52 +01:00
vmx KVM: VMX: Configure runtime hooks using vmx_x86_ops 2020-03-31 10:48:06 -04:00
cpuid.c KVM: x86: Expose fast short REP MOV for supported cpuid 2020-03-23 15:44:24 -04:00
cpuid.h KVM: x86: Refactor kvm_cpuid() param that controls out-of-range logic 2020-03-16 17:58:50 +01:00
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: Refactor kvm_cpuid() param that controls out-of-range logic 2020-03-16 17:58:50 +01:00
hyperv.c kvm: x86: hyperv: Use APICv update request interface 2020-02-05 15:17:43 +01:00
hyperv.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 499 2019-06-19 17:09:53 +02:00
i8254.c KVM: x86: Fix print format and coding style 2020-03-16 17:57:08 +01:00
i8254.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
i8259.c KVM: x86: Refactor picdev_write() to prevent Spectre-v1/L1TF attacks 2020-01-27 19:59:37 +01:00
ioapic.c kvm: ioapic: Lazy update IOAPIC EOI 2020-02-05 15:17:44 +01:00
ioapic.h KVM: X86: Move irrelevant declarations out of ioapic.h 2020-01-08 17:33:14 +01:00
irq_comm.c KVM: x86: don't notify userspace IOAPIC on edge-triggered interrupt EOI 2020-02-21 18:04:57 +01:00
irq.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 320 2019-06-05 17:37:05 +02:00
irq.h KVM: X86: Move irrelevant declarations out of ioapic.h 2020-01-08 17:33:14 +01:00
Kconfig KVM: allow disabling -Werror 2020-02-28 10:45:28 +01:00
kvm_cache_regs.h KVM: x86: Fold decache_cr3() into cache_reg() 2019-10-22 13:34:16 +02:00
kvm_emulate.h KVM: x86: Refactor kvm_cpuid() param that controls out-of-range logic 2020-03-16 17:58:50 +01:00
lapic.c KVM: X86: Micro-optimize IPI fastpath delay 2020-03-26 05:58:26 -04:00
lapic.h KVM: X86: Micro-optimize IPI fastpath delay 2020-03-26 05:58:26 -04:00
Makefile KVM: allow disabling -Werror 2020-02-28 10:45:28 +01:00
mmu_audit.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 499 2019-06-19 17:09:53 +02:00
mmu.h KVM: x86: rename set_cr3 callback and related flags to load_mmu_pgd 2020-03-16 17:58:52 +01:00
mmutrace.h KVM: x86: fix incorrect comparison in trace event 2020-02-20 18:13:44 +01:00
mtrr.c KVM: x86: Protect MSR-based index computations in fixed_msr_to_seg_unit() from Spectre-v1/L1TF attacks 2020-01-27 19:59:39 +01:00
pmu_amd.c KVM: x86/vPMU: Add lazy mechanism to release perf_event per vPMC 2019-11-15 11:44:10 +01:00
pmu.c KVM: x86: Adjust counter sample period after a wrmsr 2020-03-16 17:57:30 +01:00
pmu.h KVM: x86: Adjust counter sample period after a wrmsr 2020-03-16 17:57:30 +01:00
svm.c KVM: x86: Move init-only kvm_x86_ops to separate struct 2020-03-31 10:48:04 -04:00
trace.h KVM: x86: Add blurb to CPUID tracepoint when using max basic leaf values 2020-03-18 13:44:43 +01:00
tss.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
x86.c KVM: x86: Set kvm_x86_ops only after ->hardware_setup() completes 2020-03-31 10:48:07 -04:00
x86.h KVM: CPUID: add support for supervisor states 2020-03-16 17:58:45 +01:00