diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h index 00ad28168ef09fcd6874964f9eeaaf5d31f157e2..97853cd2d7b44e14a731fdc57e6cea9cc3c993cb 100644 --- a/include/linux/rcupdate.h +++ b/include/linux/rcupdate.h @@ -551,7 +551,7 @@ static inline void rcu_preempt_sleep_check(void) #define __rcu_assign_pointer(p, v, space) \ do { \ smp_wmb(); \ - (p) = (typeof(*v) __force space *)(v); \ + ACCESS_ONCE(p) = (typeof(*(v)) __force space *)(v); \ } while (0)