[tip: locking/kcsan] kcsan: Clarify Kconfig option KCSAN_IGNORE_ATOMICS

From: tip-bot2 for Marco Elver
Date: Tue Mar 24 2020 - 05:11:58 EST


The following commit has been merged into the locking/kcsan branch of tip:

Commit-ID: a249a73231e2e30944b948c5351025e5ff65f6d1
Gitweb: https://git.kernel.org/tip/a249a73231e2e30944b948c5351025e5ff65f6d1
Author: Marco Elver <elver@xxxxxxxxxx>
AuthorDate: Tue, 04 Feb 2020 18:21:11 +01:00
Committer: Ingo Molnar <mingo@xxxxxxxxxx>
CommitterDate: Sat, 21 Mar 2020 09:42:21 +01:00

kcsan: Clarify Kconfig option KCSAN_IGNORE_ATOMICS

Clarify difference between options KCSAN_IGNORE_ATOMICS and
KCSAN_ASSUME_PLAIN_WRITES_ATOMIC in help text.

Signed-off-by: Marco Elver <elver@xxxxxxxxxx>
Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxx>
Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>
---
lib/Kconfig.kcsan | 16 +++++++++++++---
1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/lib/Kconfig.kcsan b/lib/Kconfig.kcsan
index 6612685..020ac63 100644
--- a/lib/Kconfig.kcsan
+++ b/lib/Kconfig.kcsan
@@ -132,8 +132,18 @@ config KCSAN_ASSUME_PLAIN_WRITES_ATOMIC
config KCSAN_IGNORE_ATOMICS
bool "Do not instrument marked atomic accesses"
help
- If enabled, never instruments marked atomic accesses. This results in
- not reporting data races where one access is atomic and the other is
- a plain access.
+ Never instrument marked atomic accesses. This option can be used for
+ additional filtering. Conflicting marked atomic reads and plain
+ writes will never be reported as a data race, however, will cause
+ plain reads and marked writes to result in "unknown origin" reports.
+ If combined with CONFIG_KCSAN_REPORT_RACE_UNKNOWN_ORIGIN=n, data
+ races where at least one access is marked atomic will never be
+ reported.
+
+ Similar to KCSAN_ASSUME_PLAIN_WRITES_ATOMIC, but including unaligned
+ accesses, conflicting marked atomic reads and plain writes will not
+ be reported as data races; however, unlike that option, data races
+ due to two conflicting plain writes will be reported (aligned and
+ unaligned, if CONFIG_KCSAN_ASSUME_PLAIN_WRITES_ATOMIC=n).

endif # KCSAN