mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-04-18 08:47:42 +07:00
rcu: Protect rcu_boost() lockless accesses with ACCESS_ONCE()
This commit prevents random compiler optimizations by applying ACCESS_ONCE() to lockless accesses. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
This commit is contained in:
parent
734d168013
commit
b08ea27d95
@ -1127,7 +1127,8 @@ static int rcu_boost(struct rcu_node *rnp)
|
|||||||
struct task_struct *t;
|
struct task_struct *t;
|
||||||
struct list_head *tb;
|
struct list_head *tb;
|
||||||
|
|
||||||
if (rnp->exp_tasks == NULL && rnp->boost_tasks == NULL)
|
if (ACCESS_ONCE(rnp->exp_tasks) == NULL &&
|
||||||
|
ACCESS_ONCE(rnp->boost_tasks) == NULL)
|
||||||
return 0; /* Nothing left to boost. */
|
return 0; /* Nothing left to boost. */
|
||||||
|
|
||||||
raw_spin_lock_irqsave(&rnp->lock, flags);
|
raw_spin_lock_irqsave(&rnp->lock, flags);
|
||||||
|
Loading…
Reference in New Issue
Block a user