]> Git Repo - linux.git/commit
sched,idle,rcu: Push rcu_idle deeper into the idle path
authorPeter Zijlstra <[email protected]>
Fri, 7 Aug 2020 18:50:19 +0000 (20:50 +0200)
committerPeter Zijlstra <[email protected]>
Wed, 26 Aug 2020 10:41:53 +0000 (12:41 +0200)
commit1098582a0f6c4e8fd28da0a6305f9233d02c9c1d
treebda70ef4f575f5c5e3d8e957cd5d88125dbddf9e
parent49d9c5936314e44d314c605c39cce0fd947f9c3a
sched,idle,rcu: Push rcu_idle deeper into the idle path

Lots of things take locks, due to a wee bug, rcu_lockdep didn't notice
that the locking tracepoints were using RCU.

Push rcu_idle_{enter,exit}() as deep as possible into the idle paths,
this also resolves a lot of _rcuidle()/RCU_NONIDLE() usage.

Specifically, sched_clock_idle_wakeup_event() will use ktime which
will use seqlocks which will tickle lockdep, and
stop_critical_timings() uses lock.

Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
Reviewed-by: Steven Rostedt (VMware) <[email protected]>
Reviewed-by: Thomas Gleixner <[email protected]>
Acked-by: Rafael J. Wysocki <[email protected]>
Tested-by: Marco Elver <[email protected]>
Link: https://lkml.kernel.org/r/[email protected]
drivers/cpuidle/cpuidle.c
kernel/sched/idle.c
This page took 0.054393 seconds and 4 git commands to generate.