Signed-off-by: Jan Beulich <jbeul...@suse.com>
---
 arch/x86/lib/thunk_32.S |   21 +++++++++++++++------
 1 file changed, 15 insertions(+), 6 deletions(-)

--- 3.17-rc6/arch/x86/lib/thunk_32.S
+++ 3.17-rc6-ix86-annotate-thunks/arch/x86/lib/thunk_32.S
@@ -6,22 +6,31 @@
  */
        #include <linux/linkage.h>
        #include <asm/asm.h>
+       #include <asm/dwarf2.h>
 
 #ifdef CONFIG_TRACE_IRQFLAGS
        /* put return address in eax (arg1) */
        .macro thunk_ra name,func
        .globl \name
 \name:
-       pushl %eax
-       pushl %ecx
-       pushl %edx
+       CFI_STARTPROC
+       pushl_cfi %eax
+       CFI_REL_OFFSET eax, 0
+       pushl_cfi %ecx
+       CFI_REL_OFFSET ecx, 0
+       pushl_cfi %edx
+       CFI_REL_OFFSET edx, 0
        /* Place EIP in the arg1 */
        movl 3*4(%esp), %eax
        call \func
-       popl %edx
-       popl %ecx
-       popl %eax
+       popl_cfi %edx
+       CFI_RESTORE edx
+       popl_cfi %ecx
+       CFI_RESTORE ecx
+       popl_cfi %eax
+       CFI_RESTORE eax
        ret
+       CFI_ENDPROC
        _ASM_NOKPROBE(\name)
        .endm
 



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to