diff options
author | Sean Christopherson <sean.j.christopherson@intel.com> | 2019-01-25 07:41:11 -0800 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2019-02-20 22:48:13 +0100 |
commit | 63c73aa07fcabc090661a586f7ae5200a0fc5cb4 (patch) | |
tree | 24043b078a88f836254fa056d6d35f3d3171850f /arch/x86 | |
parent | c14f9dd50b01b55834a757dd50af35b8e168512d (diff) | |
download | linux-stable-63c73aa07fcabc090661a586f7ae5200a0fc5cb4.tar.gz linux-stable-63c73aa07fcabc090661a586f7ae5200a0fc5cb4.tar.bz2 linux-stable-63c73aa07fcabc090661a586f7ae5200a0fc5cb4.zip |
KVM: VMX: Create a stack frame in vCPU-run
...in preparation for moving to a proper assembly sub-routnine.
vCPU-run isn't a leaf function since it calls vmx_update_host_rsp()
and vmx_vmenter(). And since we need to save/restore RBP anyways,
unconditionally creating the frame costs a single MOV, i.e. don't
bother keying off CONFIG_FRAME_POINTER or using FRAME_BEGIN, etc...
Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch/x86')
-rw-r--r-- | arch/x86/kvm/vmx/vmx.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c index 12fb342218ad..52fea89732db 100644 --- a/arch/x86/kvm/vmx/vmx.c +++ b/arch/x86/kvm/vmx/vmx.c @@ -6407,8 +6407,8 @@ static void __vmx_vcpu_run(struct kvm_vcpu *vcpu, struct vcpu_vmx *vmx) write_cr2(vcpu->arch.cr2); asm( - /* Store host registers */ "push %%" _ASM_BP " \n\t" + "mov %%" _ASM_SP ", %%" _ASM_BP " \n\t" /* * Save @regs, _ASM_ARG2 may be modified by vmx_update_host_rsp() and |