Re: KCSAN: data-race in __alloc_file / __alloc_file

From: Linus Torvalds
Date: Fri Nov 08 2019 - 12:39:15 EST


On Fri, Nov 8, 2019 at 9:22 AM Eric Dumazet <edumazet@xxxxxxxxxx> wrote:
>
> Ok, so what do you suggest next ?
>
> Declare KCSAN useless because too many false positives ?

I'd hope that there is some way to mark the cases we know about where
we just have a flag. I'm not sure what KCSAN uses right now - is it
just the "volatile" that makes KCSAN ignore it, or are there other
ways to do it?

"volatile" has huge problems with code generation for gcc. It would
probably be fine for "not_rcu" in this case, but I'd like to avoid it
in general otherwise, which is why I wonder if there are other
options.

But worst comes to worst, I'd be ok with a WRITE_ONCE() and a comment
about why (and the reason being KCSAN, not the questionable
optimization).

Linus