Lines Matching refs:data_race
20 2. Data-race marking, for example, "data_race(a = b);"
37 WRITE_ONCE(a, b + data_race(c + d) + READ_ONCE(e));
39 Neither plain C-language accesses nor data_race() (#1 and #2 above) place
45 preferable to data_race(), which in turn is usually preferable to plain
47 data_race(READ_ONCE(a)), which will both restrict compiler optimizations
52 race with one of data_race(), READ_ONCE(), or WRITE_ONCE(), will prevent
56 ill-considered additions of data_race(), READ_ONCE(), and WRITE_ONCE()
60 data_race() and even plain C-language accesses is preferable to
64 Use of the data_race() Macro
67 Here are some situations where data_race() should be used instead of
87 In fact, use of data_race() instead READ_ONCE() for these diagnostic
94 data_race() for the diagnostic reads because otherwise KCSAN would give
98 KCSAN diagnostics, use both data_race() and READ_ONCE(), for example,
99 data_race(READ_ONCE(a)).
117 However, please keep in mind that a data_race() load feeding into
134 errors. Such reads can use data_race(), thus allowing KCSAN to focus on
136 that data_race() loads are subject to load fusing, which can result in
138 Therefore use of data_race() should be limited to cases where some other
144 instead of data_race().
156 to this same variable, and these writes can also use data_race().
173 used instead of READ_ONCE(), WRITE_ONCE(), and data_race():
219 enclosed by data_race(). However, __data_racy does not affect the
249 write is marked with data_race() or WRITE_ONCE().
253 and data_race() writes on the other, KCSAN will not report the location
254 of these data_race() writes.
298 pr_info("Current value of foo: %d\n", data_race(foo));
306 reads from or updates to foo. The data_race() in read_foo_diagnostic()
308 ignored. This data_race() also tells the human reading the code that
316 pr_info("Current value of foo: %d\n", data_race(READ_ONCE(foo)));
320 this function can be marked __no_kcsan and the data_race() can be dropped:
393 /* This works even if data_race() returns nonsense. */
394 if (!data_race(global_flag)) {
558 newold = data_race(foo); /* Checked by cmpxchg(). */
589 newold = data_race(foo); /* Checked by cmpxchg(). */