Skip to content

Commit b3c3a9c

Browse files
committed
Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull RCU fix from Ingo Molnar: "Fix leaking RCU extended quiescent state, which might trigger warnings and mess up the extended quiescent state tracking logic into thinking that we are in "RCU user mode" while we aren't." * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: rcu: Fix unrecovered RCU user mode in syscall_trace_leave()
2 parents 455e987 + 7450403 commit b3c3a9c

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

arch/x86/kernel/ptrace.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1541,6 +1541,13 @@ void syscall_trace_leave(struct pt_regs *regs)
15411541
{
15421542
bool step;
15431543

1544+
/*
1545+
* We may come here right after calling schedule_user()
1546+
* or do_notify_resume(), in which case we can be in RCU
1547+
* user mode.
1548+
*/
1549+
rcu_user_exit();
1550+
15441551
audit_syscall_exit(regs);
15451552

15461553
if (unlikely(test_thread_flag(TIF_SYSCALL_TRACEPOINT)))

0 commit comments

Comments
 (0)