From: Ran Xiaokai <ran.xiaokai@xxxxxxxxxx> huge_anon_orders_always and huge_anon_orders_always are accessed lockless, it is better to use the READ_ONCE() wrapper. This is not fixing any visible bug, hopefully this can cease some KCSAN complains in the future. Also do that for huge_anon_orders_madvise. Signed-off-by: Ran Xiaokai <ran.xiaokai@xxxxxxxxxx> --- include/linux/huge_mm.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/linux/huge_mm.h b/include/linux/huge_mm.h index de0c89105076..6573430ea600 100644 --- a/include/linux/huge_mm.h +++ b/include/linux/huge_mm.h @@ -122,8 +122,8 @@ static inline bool hugepage_flags_enabled(void) * So we don't need to look at huge_anon_orders_inherit. */ return hugepage_global_enabled() || - huge_anon_orders_always || - huge_anon_orders_madvise; + READ_ONCE(huge_anon_orders_always) || + READ_ONCE(huge_anon_orders_madvise); } static inline int highest_order(unsigned long orders) -- 2.15.2