summaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/entry_64.S
diff options
context:
space:
mode:
authorFrederic Weisbecker <fweisbec@gmail.com>2011-07-01 02:25:17 +0200
committerFrederic Weisbecker <fweisbec@gmail.com>2011-07-02 18:05:46 +0200
commit3b99a3ef55b292180473a221f3d6bc24455f0632 (patch)
treee00651ee9e8d13cbe6845ba20c47e1d04da7dae9 /arch/x86/kernel/entry_64.S
parent1871853f7abc3c727c4346539c5062cbeaf016a4 (diff)
downloadlinux-3b99a3ef55b292180473a221f3d6bc24455f0632.tar.gz
linux-3b99a3ef55b292180473a221f3d6bc24455f0632.tar.bz2
linux-3b99a3ef55b292180473a221f3d6bc24455f0632.zip
x86,64: Separate arg1 from rbp handling in SAVE_REGS_IRQ
Just for clarity in the code. Have a first block that handles the frame pointer and a separate one that handles pt_regs pointer and its use. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Jan Beulich <JBeulich@novell.com>
Diffstat (limited to 'arch/x86/kernel/entry_64.S')
-rw-r--r--arch/x86/kernel/entry_64.S3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/kernel/entry_64.S b/arch/x86/kernel/entry_64.S
index b6b2e85454cf..20dc8e6b6d80 100644
--- a/arch/x86/kernel/entry_64.S
+++ b/arch/x86/kernel/entry_64.S
@@ -310,9 +310,10 @@ ENDPROC(native_usergs_sysret64)
movq_cfi r10, R10-RBP
movq_cfi r11, R11-RBP
- leaq -RBP(%rsp),%rdi /* arg1 for handler */
movq_cfi rbp, 0 /* push %rbp */
movq %rsp, %rbp
+
+ leaq -RBP(%rsp),%rdi /* arg1 for handler */
testl $3, CS(%rdi)
je 1f
SWAPGS