diff options
author | Sean Christopherson <seanjc@google.com> | 2024-02-23 12:42:30 -0800 |
---|---|---|
committer | Sean Christopherson <seanjc@google.com> | 2024-04-09 10:20:29 -0700 |
commit | c92be2fd8edf7b300a758c185fe032fd0257b886 (patch) | |
tree | c6f077e4f821778a71256d948aa014c86395cb0f /tools/perf/scripts/python/task-analyzer.py | |
parent | 87e8e360a05fd29465691aeac179bcf585600c59 (diff) |
KVM: SVM: Save/restore non-volatile GPRs in SEV-ES VMRUN via host save area
Use the host save area to save/restore non-volatile (callee-saved)
registers in __svm_sev_es_vcpu_run() to take advantage of hardware loading
all registers from the save area on #VMEXIT. KVM still needs to save the
registers it wants restored, but the loads are handled automatically by
hardware.
Aside from less assembly code, letting hardware do the restoration means
stack frames are preserved for the entirety of __svm_sev_es_vcpu_run().
Opportunistically add a comment to call out why @svm needs to be saved
across VMRUN->#VMEXIT, as it's not easy to decipher that from the macro
hell.
Cc: Tom Lendacky <thomas.lendacky@amd.com>
Cc: Michael Roth <michael.roth@amd.com>
Cc: Alexey Kardashevskiy <aik@amd.com>
Reviewed-by: Tom Lendacky <thomas.lendacky@amd.com>
Link: https://lore.kernel.org/r/20240223204233.3337324-6-seanjc@google.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
Diffstat (limited to 'tools/perf/scripts/python/task-analyzer.py')
0 files changed, 0 insertions, 0 deletions