From: Jan Kiszka <[email protected]>

We need to skip of rbp in return now as it is saved to the stack on
entry.

Signed-off-by: Jan Kiszka <[email protected]>
---

FWIW, this makes 2.6.38+ useable with x86-64 (tested with 2.6.38.8 so
far).

 arch/x86/kernel/entry_64.S |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/arch/x86/kernel/entry_64.S b/arch/x86/kernel/entry_64.S
index ba709ff..ed0f408 100644
--- a/arch/x86/kernel/entry_64.S
+++ b/arch/x86/kernel/entry_64.S
@@ -870,8 +870,11 @@ common_interrupt:
        jnz ret_from_intr
        decl PER_CPU_VAR(irq_count)
        leaveq
+       CFI_RESTORE             rbp
        CFI_DEF_CFA_REGISTER    rsp
        CFI_ADJUST_CFA_OFFSET   -8
+       addq $8, %rsp
+       CFI_ADJUST_CFA_OFFSET   -8
        testl $3,CS-ARGOFFSET(%rsp)
        jz restore_args
        jmp retint_swapgs_notrace
@@ -1039,8 +1042,11 @@ ENTRY(\sym)
        jnz ret_from_intr
        decl PER_CPU_VAR(irq_count)
        leaveq
+       CFI_RESTORE             rbp
        CFI_DEF_CFA_REGISTER    rsp
        CFI_ADJUST_CFA_OFFSET   -8
+       addq $8, %rsp
+       CFI_ADJUST_CFA_OFFSET   -8
        testl $3,CS-ARGOFFSET(%rsp)
        jz restore_args
        jmp retint_swapgs_notrace
-- 
1.7.1

_______________________________________________
Adeos-main mailing list
[email protected]
https://mail.gna.org/listinfo/adeos-main

Reply via email to