aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel
diff options
context:
space:
mode:
authorRoland McGrath <roland@redhat.com>2008-06-24 04:13:31 -0400
committerRoland McGrath <roland@redhat.com>2008-07-23 20:55:22 -0400
commit5cbf1565f29eb57a86a305b08836613508e294d7 (patch)
tree70806175e0868b543860d7d123cceb230d5d5e71 /arch/x86/kernel
parent86a1c34a929f30fde8ad01ea8245df61ddcf58b7 (diff)
x86_64 ia32 syscall audit fast-path
This adds fast paths for 32-bit syscall entry and exit when TIF_SYSCALL_AUDIT is set, but no other kind of syscall tracing. These paths does not need to save and restore all registers as the general case of tracing does. Avoiding the iret return path when syscall audit is enabled helps performance a lot. Signed-off-by: Roland McGrath <roland@redhat.com>
Diffstat (limited to 'arch/x86/kernel')
-rw-r--r--arch/x86/kernel/entry_64.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/kernel/entry_64.S b/arch/x86/kernel/entry_64.S
index db7d34a89d2e..89434d439605 100644
--- a/arch/x86/kernel/entry_64.S
+++ b/arch/x86/kernel/entry_64.S
@@ -492,6 +492,7 @@ tracesys:
492 * Has correct top of stack, but partial stack frame. 492 * Has correct top of stack, but partial stack frame.
493 */ 493 */
494 .globl int_ret_from_sys_call 494 .globl int_ret_from_sys_call
495 .globl int_with_check
495int_ret_from_sys_call: 496int_ret_from_sys_call:
496 DISABLE_INTERRUPTS(CLBR_NONE) 497 DISABLE_INTERRUPTS(CLBR_NONE)
497 TRACE_IRQS_OFF 498 TRACE_IRQS_OFF