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

Mirsad Todorovac mirsad.todorovac at alu.unizg.hr
Mon Oct 2 12:50:09 PDT 2023


On 10/2/23 18:43, Liam R. Howlett wrote:
> * Mirsad Todorovac <mirsad.todorovac at alu.unizg.hr> [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.

Thanks for your feedback. If KCSAN is giving false positives, there is quite a lot of them.

I tend to believe on the safe side of the Prof. Paul McKenney, but it is your code.

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

I see. I also have some tough stuff at my day job this month. :-P

Have a nice day.

Best regards,
Mirsad

> Thanks,
> Liam



More information about the maple-tree mailing list