diff options
| author | K Prateek Nayak <kprateek.nayak@amd.com> | 2026-03-12 07:44:31 +0300 |
|---|---|---|
| committer | Peter Zijlstra <peterz@infradead.org> | 2026-03-18 11:06:49 +0300 |
| commit | f494bfb04615119f31dbd3222c9d39fea3817d40 (patch) | |
| tree | 78991b6c7fae308976f8b4c948a9b35e129d9519 | |
| parent | 10febd397591d93f42adb743c2c664041e7f1bcb (diff) | |
| download | linux-f494bfb04615119f31dbd3222c9d39fea3817d40.tar.xz | |
sched/core: Check for rcu_read_lock_any_held() in idle_get_state()
Similar to commit 71fedc41c23b ("sched/fair: Switch to
rcu_dereference_all()"), switch to checking for rcu_read_lock_any_held()
in idle_get_state() to allow removing superfluous rcu_read_lock()
regions in the fair task's wakeup path where the pi_lock is held and
IRQs are disabled.
Signed-off-by: K Prateek Nayak <kprateek.nayak@amd.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
Tested-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
Link: https://patch.msgid.link/20260312044434.1974-7-kprateek.nayak@amd.com
| -rw-r--r-- | kernel/sched/sched.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index 953d89d71804..b863bbda6de8 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -2853,7 +2853,7 @@ static inline void idle_set_state(struct rq *rq, static inline struct cpuidle_state *idle_get_state(struct rq *rq) { - WARN_ON_ONCE(!rcu_read_lock_held()); + lockdep_assert(rcu_read_lock_any_held()); return rq->idle_state; } |
