Commit 5fb1c2a5 authored by Amol Grover's avatar Amol Grover Committed by Thomas Gleixner

posix-timers: Pass lockdep expression to RCU lists

head is traversed using hlist_for_each_entry_rcu outside an RCU read-side
critical section but under the protection of hash_lock.

Hence, add corresponding lockdep expression to silence false-positive
lockdep warnings, and harden RCU lists.

[ tglx: Removed the macro and put the condition right where it's used ]
Signed-off-by: default avatarAmol Grover <frextrite@gmail.com>
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Link: https://lkml.kernel.org/r/20200216074330.GA14025@workstation-portable
parent 6e317c32
...@@ -121,7 +121,8 @@ static struct k_itimer *__posix_timers_find(struct hlist_head *head, ...@@ -121,7 +121,8 @@ static struct k_itimer *__posix_timers_find(struct hlist_head *head,
{ {
struct k_itimer *timer; struct k_itimer *timer;
hlist_for_each_entry_rcu(timer, head, t_hash) { hlist_for_each_entry_rcu(timer, head, t_hash,
lockdep_is_held(&hash_lock)) {
if ((timer->it_signal == sig) && (timer->it_id == id)) if ((timer->it_signal == sig) && (timer->it_id == id))
return timer; return timer;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment