On Mon, Jan 20, 2020 at 05:52:23PM +0100, Peter Zijlstra wrote:
On Mon, Jan 20, 2020 at 08:27:25AM -0800, Paul E. McKenney wrote:
quoted
On Mon, Jan 20, 2020 at 03:40:48PM +0100, Peter Zijlstra wrote:
quoted
On Mon, Jan 20, 2020 at 03:19:25PM +0100, Marco Elver wrote:
quoted
Add explicit KCSAN checks for bitops.
Note that test_bit() is an atomic bitop, and we instrument it as such,
Well, it is 'atomic' in the same way that atomic_read() is. Both are
very much not atomic ops, but are part of an interface that facilitates
atomic operations.
True, but they all are either inline assembly or have either an
implicit or explicit cast to volatile, so they could be treated
the same as atomic_read(), correct? If not, what am I missing?
Sure, but that is due to instrumentation requirements, not anything
else.
Also note the distinct lack of __test_bit(), to mirror the non-atomic
__set_bit() and __clear_bit().
OK, I will bite. ;-)
We also don't have __atomic_read() and __atomic_set(), yet atomic_read()
and atomic_set() are considered to be non-racy, right?
Thanx, Paul