Re: BUG: maple_tree: KCSAN: data-race in mas_topiary_replace / mtree_range_walk [EXPERIMENTAL PATCH]

From: Liam R. Howlett
Date: Mon Oct 02 2023 - 12:43:38 EST


* Mirsad Todorovac <mirsad.todorovac@xxxxxxxxxxxx> [231001 17:09]:

...

>
> They say that one patch speaks more than a thousand words.
>
> I am just running this little patch that actually silences all of the KCSAN warnings.
>
> I cannot tell if these reported data races are the actual bugs, but it is possible that
> the Ubuntu 22.04 gcc is doing some funny stuff when optimising. In Prof. McKenney's
> book I've read about the load-tearing and store-tearing. AFAICS, memory barriers should
> prevent load/store reordering, but not the compiler optimisations.
>
> Please find two versions of the patch attached.
>
> While mas->index and pivots[offset] in maple_range_walk can change concurrently,
> I am not smart enough to see whether you expect that in your algorithm or is it a potential
> bug triggered by GCC optimisations and aggressive Ryzen 9 7950X parallelism.

None of this is necessary, for sure.

I will have to look at this when I have more time to investigate. This
will likely not be soon, however.

Thanks,
Liam