[PATCH] Kprobes - x86_64 add KPROBE_END macro for .popsection

From: S. P. Prasanna
Date: Thu Aug 17 2006 - 13:10:58 EST


This patch replace .popsection with the KPROBE_END() macro, as
suggested by Jan Beulich similar to i386 architecture. This will
be helpful for the conversions ike the recent .section -> .pushsection
and .previous -> .popsection to be confined to the header defining
these macros, without need to touch any assembly files.

Signed-off-by: Prasanna S. P. <prasanna@xxxxxxxxxx>


arch/x86_64/kernel/entry.S | 18 ++++++------------
1 files changed, 6 insertions(+), 12 deletions(-)

diff -puN arch/x86_64/kernel/entry.S~kprobes-x86_64-add-popsection-macro-for-assembly-stub arch/x86_64/kernel/entry.S
--- linux-2.6.18-rc4-mm1/arch/x86_64/kernel/entry.S~kprobes-x86_64-add-popsection-macro-for-assembly-stub 2006-08-17 12:21:28.000000000 +0530
+++ linux-2.6.18-rc4-mm1-prasanna/arch/x86_64/kernel/entry.S 2006-08-17 12:23:57.000000000 +0530
@@ -903,8 +903,7 @@ error_kernelspace:
cmpq $gs_change,RIP(%rsp)
je error_swapgs
jmp error_sti
-END(error_entry)
- .popsection
+KPROBE_END(error_entry)

/* Reload gs selector with exception handling */
/* edi: new selector */
@@ -1023,8 +1022,7 @@ ENDPROC(execve)

KPROBE_ENTRY(page_fault)
errorentry do_page_fault
-END(page_fault)
- .popsection
+KPROBE_END(page_fault)

ENTRY(coprocessor_error)
zeroentry do_coprocessor_error
@@ -1045,8 +1043,7 @@ KPROBE_ENTRY(debug)
CFI_ADJUST_CFA_OFFSET 8
paranoidentry do_debug, DEBUG_STACK
paranoidexit
-END(debug)
- .popsection
+KPROBE_END(debug)

/* runs on exception stack */
KPROBE_ENTRY(nmi)
@@ -1060,8 +1057,7 @@ KPROBE_ENTRY(nmi)
jmp paranoid_exit1
CFI_ENDPROC
#endif
-END(nmi)
- .popsection
+KPROBE_END(nmi)

KPROBE_ENTRY(int3)
INTR_FRAME
@@ -1070,8 +1066,7 @@ KPROBE_ENTRY(int3)
paranoidentry do_int3, DEBUG_STACK
jmp paranoid_exit1
CFI_ENDPROC
-END(int3)
- .popsection
+KPROBE_END(int3)

ENTRY(overflow)
zeroentry do_overflow
@@ -1119,8 +1114,7 @@ END(stack_segment)

KPROBE_ENTRY(general_protection)
errorentry do_general_protection
-END(general_protection)
- .popsection
+KPROBE_END(general_protection)

ENTRY(alignment_check)
errorentry do_alignment_check

_
--
Prasanna S.P.
Linux Technology Center
India Software Labs, IBM Bangalore
Email: prasanna@xxxxxxxxxx
Ph: 91-80-41776329
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/