On Fri, Nov 8, 2019 at 9:39 AM Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > 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? I dunno, Marco will comment on this. I personally like WRITE_ONCE() since it adds zero overhead on generated code, and is the facto accessor we used for many years (before KCSAN was conceived) > > "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). Ok for a single WRITE_ONCE() with a comment. Hmm, which questionable optimization are you referring to?