On 4/27/24 10:51, linke li wrote: > In deactivate_slab(), slab->freelist can be changed concurrently. Mark > data race on slab->freelist as benign using READ_ONCE. > > This patch is aimed at reducing the number of benign races reported by > KCSAN in order to focus future debugging effort on harmful races. > > Signed-off-by: linke li <lilinke99@xxxxxx> Added to slab/for-6.10, thanks > --- > mm/slub.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/mm/slub.c b/mm/slub.c > index 0d700f6ca547..bb0e05a321e9 100644 > --- a/mm/slub.c > +++ b/mm/slub.c > @@ -2813,7 +2813,7 @@ static void deactivate_slab(struct kmem_cache *s, struct slab *slab, > struct slab new; > struct slab old; > > - if (slab->freelist) { > + if (READ_ONCE(slab->freelist)) { > stat(s, DEACTIVATE_REMOTE_FREES); > tail = DEACTIVATE_TO_TAIL; > }