diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2024-04-17 11:42:51 -0400 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2024-04-17 11:44:37 -0400 |
commit | 44ecfa3e5f1ce2b5c7fa7003abde8a667c158f88 (patch) | |
tree | e8ac65c251c7c5eaa3c1fedf706c22fc717acf3f /arch/x86/include | |
parent | 1c3bed8006691f485156153778192864c9d8e14f (diff) | |
parent | 27ca867042affef7eba692d3bac7b51ee85e36ad (diff) |
Merge branch 'svm' of https://github.com/kvm-x86/linux into HEAD
Clean up SVM's enter/exit assembly code so that it can be compiled
without OBJECT_FILES_NON_STANDARD. The "standard" __svm_vcpu_run() can't
be made 100% bulletproof, as RBP isn't restored on #VMEXIT, but that's
also the case for __vmx_vcpu_run(), and getting "close enough" is better
than not even trying.
As for SEV-ES, after yet another refresher on swap types, I realized
KVM can simply let the hardware restore registers after #VMEXIT, all
that's missing is storing the current values to the host save area
(they are swap type B). This should provide 100% accuracy when using
stack frames for unwinding, and requires less assembly.
In between, build the SEV-ES code iff CONFIG_KVM_AMD_SEV=y, and yank out
"support" for 32-bit kernels in __svm_sev_es_vcpu_run, which was
unnecessarily polluting the code for a configuration that is disabled
at build time.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch/x86/include')
0 files changed, 0 insertions, 0 deletions