aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2012-11-13 12:58:39 -0500
committerIngo Molnar <mingo@kernel.org>2012-11-13 12:58:39 -0500
commit745040347d7e8e7b47e3790de76423d9eab474eb (patch)
tree6cd8e949b68b2006071d7075bfae89103626ff26 /arch
parent59fa6245192159ab5e1e17b8e31f15afa9cff4bf (diff)
parent2c5594df344cd1ff0cc9bf007dea3235582b3acf (diff)
Merge branch 'rcu/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/urgent
Pull syscall tracing fix from Paul E. McKenney. Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/kernel/ptrace.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/x86/kernel/ptrace.c b/arch/x86/kernel/ptrace.c
index b00b33a18390..eff5b8c68652 100644
--- a/arch/x86/kernel/ptrace.c
+++ b/arch/x86/kernel/ptrace.c
@@ -1511,6 +1511,13 @@ void syscall_trace_leave(struct pt_regs *regs)
1511{ 1511{
1512 bool step; 1512 bool step;
1513 1513
1514 /*
1515 * We may come here right after calling schedule_user()
1516 * or do_notify_resume(), in which case we can be in RCU
1517 * user mode.
1518 */
1519 rcu_user_exit();
1520
1514 audit_syscall_exit(regs); 1521 audit_syscall_exit(regs);
1515 1522
1516 if (unlikely(test_thread_flag(TIF_SYSCALL_TRACEPOINT))) 1523 if (unlikely(test_thread_flag(TIF_SYSCALL_TRACEPOINT)))