* [PATCH v2] KVM: VMX: Remove unneeded __ASM_SIZE usage with POP instruction
@ 2020-04-27 20:50 Uros Bizjak
2020-05-04 16:52 ` Paolo Bonzini
0 siblings, 1 reply; 2+ messages in thread
From: Uros Bizjak @ 2020-04-27 20:50 UTC (permalink / raw)
To: kvm; +Cc: Uros Bizjak, Paolo Bonzini, Sean Christopherson
POP [mem] defaults to the word size, and the only legal non-default
size is 16 bits, e.g. a 32-bit POP will #UD in 64-bit mode and vice
versa, no need to use __ASM_SIZE macro to force operating mode.
Changes since v1:
- Fix commit message.
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Sean Christopherson <sean.j.christopherson@intel.com>
Reviewed-by: Sean Christopherson <sean.j.christopherson@intel.com>
Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
---
arch/x86/kvm/vmx/vmenter.S | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/arch/x86/kvm/vmx/vmenter.S b/arch/x86/kvm/vmx/vmenter.S
index 87f3f24fef37..94b8794bdd2a 100644
--- a/arch/x86/kvm/vmx/vmenter.S
+++ b/arch/x86/kvm/vmx/vmenter.S
@@ -163,13 +163,13 @@ SYM_FUNC_START(__vmx_vcpu_run)
mov WORD_SIZE(%_ASM_SP), %_ASM_AX
/* Save all guest registers, including RAX from the stack */
- __ASM_SIZE(pop) VCPU_RAX(%_ASM_AX)
- mov %_ASM_CX, VCPU_RCX(%_ASM_AX)
- mov %_ASM_DX, VCPU_RDX(%_ASM_AX)
- mov %_ASM_BX, VCPU_RBX(%_ASM_AX)
- mov %_ASM_BP, VCPU_RBP(%_ASM_AX)
- mov %_ASM_SI, VCPU_RSI(%_ASM_AX)
- mov %_ASM_DI, VCPU_RDI(%_ASM_AX)
+ pop VCPU_RAX(%_ASM_AX)
+ mov %_ASM_CX, VCPU_RCX(%_ASM_AX)
+ mov %_ASM_DX, VCPU_RDX(%_ASM_AX)
+ mov %_ASM_BX, VCPU_RBX(%_ASM_AX)
+ mov %_ASM_BP, VCPU_RBP(%_ASM_AX)
+ mov %_ASM_SI, VCPU_RSI(%_ASM_AX)
+ mov %_ASM_DI, VCPU_RDI(%_ASM_AX)
#ifdef CONFIG_X86_64
mov %r8, VCPU_R8 (%_ASM_AX)
mov %r9, VCPU_R9 (%_ASM_AX)
--
2.25.4
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v2] KVM: VMX: Remove unneeded __ASM_SIZE usage with POP instruction
2020-04-27 20:50 [PATCH v2] KVM: VMX: Remove unneeded __ASM_SIZE usage with POP instruction Uros Bizjak
@ 2020-05-04 16:52 ` Paolo Bonzini
0 siblings, 0 replies; 2+ messages in thread
From: Paolo Bonzini @ 2020-05-04 16:52 UTC (permalink / raw)
To: Uros Bizjak, kvm; +Cc: Sean Christopherson
On 27/04/20 22:50, Uros Bizjak wrote:
> POP [mem] defaults to the word size, and the only legal non-default
> size is 16 bits, e.g. a 32-bit POP will #UD in 64-bit mode and vice
> versa, no need to use __ASM_SIZE macro to force operating mode.
>
> Changes since v1:
> - Fix commit message.
>
> Cc: Paolo Bonzini <pbonzini@redhat.com>
> Cc: Sean Christopherson <sean.j.christopherson@intel.com>
> Reviewed-by: Sean Christopherson <sean.j.christopherson@intel.com>
> Signed-off-by: Uros Bizjak <ubizjak@gmail.com>
> ---
> arch/x86/kvm/vmx/vmenter.S | 14 +++++++-------
> 1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/arch/x86/kvm/vmx/vmenter.S b/arch/x86/kvm/vmx/vmenter.S
> index 87f3f24fef37..94b8794bdd2a 100644
> --- a/arch/x86/kvm/vmx/vmenter.S
> +++ b/arch/x86/kvm/vmx/vmenter.S
> @@ -163,13 +163,13 @@ SYM_FUNC_START(__vmx_vcpu_run)
> mov WORD_SIZE(%_ASM_SP), %_ASM_AX
>
> /* Save all guest registers, including RAX from the stack */
> - __ASM_SIZE(pop) VCPU_RAX(%_ASM_AX)
> - mov %_ASM_CX, VCPU_RCX(%_ASM_AX)
> - mov %_ASM_DX, VCPU_RDX(%_ASM_AX)
> - mov %_ASM_BX, VCPU_RBX(%_ASM_AX)
> - mov %_ASM_BP, VCPU_RBP(%_ASM_AX)
> - mov %_ASM_SI, VCPU_RSI(%_ASM_AX)
> - mov %_ASM_DI, VCPU_RDI(%_ASM_AX)
> + pop VCPU_RAX(%_ASM_AX)
> + mov %_ASM_CX, VCPU_RCX(%_ASM_AX)
> + mov %_ASM_DX, VCPU_RDX(%_ASM_AX)
> + mov %_ASM_BX, VCPU_RBX(%_ASM_AX)
> + mov %_ASM_BP, VCPU_RBP(%_ASM_AX)
> + mov %_ASM_SI, VCPU_RSI(%_ASM_AX)
> + mov %_ASM_DI, VCPU_RDI(%_ASM_AX)
> #ifdef CONFIG_X86_64
> mov %r8, VCPU_R8 (%_ASM_AX)
> mov %r9, VCPU_R9 (%_ASM_AX)
>
Queued, thanks.
Paolo
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-05-04 16:52 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-27 20:50 [PATCH v2] KVM: VMX: Remove unneeded __ASM_SIZE usage with POP instruction Uros Bizjak
2020-05-04 16:52 ` Paolo Bonzini
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.