diff options
| author | Sean Christopherson <sean.j.christopherson@intel.com> | 2019-01-25 07:40:53 -0800 |
|---|---|---|
| committer | Paolo Bonzini <pbonzini@redhat.com> | 2019-02-12 13:12:16 +0100 |
| commit | ccf447434ee624b64a1c215d88453f1921aaa88a (patch) | |
| tree | 2cff0d632ca2f6cad96191c8d97f627c49d128ff /tools/perf/scripts/python/bin/export-to-sqlite-record | |
| parent | KVM: VMX: Save RSI to an unused output in the vCPU-run asm blob (diff) | |
| download | linux-ccf447434ee624b64a1c215d88453f1921aaa88a.tar.gz linux-ccf447434ee624b64a1c215d88453f1921aaa88a.zip | |
KVM: VMX: Manually load RDX in vCPU-run asm blob
Load RDX with the VMCS.HOST_RSP field encoding on-demand instead of
delegating to the compiler via an input constraint. In addition to
saving one whole MOV instruction, this allows RDX to be properly
clobbered (in a future patch) instead of being saved/loaded to/from
the stack.
Despite nested_vmx_check_vmentry_hw() having similar code, leave it
alone, for now. In that case, RDX is unconditionally used and isn't
clobbered, i.e. sending in HOST_RSP as an input is simpler.
Note that because HOST_RSP is an enum and not a define, it must be
redefined as an immediate instead of using __stringify(HOST_RSP). The
naming "conflict" between host_rsp and HOST_RSP is slightly confusing,
but the former will be removed in a future patch, at which point
HOST_RSP is absolutely what is desired.
Reviewed-by: Jim Mattson <jmattson@google.com>
Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'tools/perf/scripts/python/bin/export-to-sqlite-record')
0 files changed, 0 insertions, 0 deletions
