]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blobdiff - kernel/rcu/rcu_segcblist.h
rcu: Mark writes to the rcu_segcblist structure's ->flags field
[mirror_ubuntu-jammy-kernel.git] / kernel / rcu / rcu_segcblist.h
index 9a19328ff251440d9e19e9211c78cfe0285f9de1..5d405943823ec6e8f87c40ea9bf6caa795b0c2fb 100644 (file)
@@ -56,13 +56,13 @@ static inline long rcu_segcblist_n_cbs(struct rcu_segcblist *rsclp)
 static inline void rcu_segcblist_set_flags(struct rcu_segcblist *rsclp,
                                           int flags)
 {
-       rsclp->flags |= flags;
+       WRITE_ONCE(rsclp->flags, rsclp->flags | flags);
 }
 
 static inline void rcu_segcblist_clear_flags(struct rcu_segcblist *rsclp,
                                             int flags)
 {
-       rsclp->flags &= ~flags;
+       WRITE_ONCE(rsclp->flags, rsclp->flags & ~flags);
 }
 
 static inline bool rcu_segcblist_test_flags(struct rcu_segcblist *rsclp,