Skip to contentSkip to conversation

core fixes for 3.7

GIT PULL Thomas Gleixner 1 participant 1 message Nov 20, 2012

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

Linus,

please pull the latest core-urgent-for-linus git tree from:

git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git core-urgent-for-linus

* One line fix, which plugs a rcu_user leak.

Thanks,

tglx

------------------>
Frederic Weisbecker (1):
rcu: Fix unrecovered RCU user mode in syscall_trace_leave()

 arch/x86/kernel/ptrace.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)
arch/x86/kernel/ptrace.c +7 -0
index b00b33a..eff5b8c 100644
@@ -1511,6 +1511,13 @@ void syscall_trace_leave(struct pt_regs *regs)
 {
 	bool step;
 
+	/*
+	 * We may come here right after calling schedule_user()
+	 * or do_notify_resume(), in which case we can be in RCU
+	 * user mode.
+	 */
+	rcu_user_exit();
+
 	audit_syscall_exit(regs);
 
 	if (unlikely(test_thread_flag(TIF_SYSCALL_TRACEPOINT)))