summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorMarco Elver <elver@google.com>2022-09-12 11:45:41 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-01-14 10:15:10 +0100
commit933499bed78dc9daa9be8ede7c7c9be1951a2d87 (patch)
tree0c4e9d8c245ed82968cb8995013db6864f4959e6 /tools
parent275a67e909f784e52a0d064eb841d77a79bd3632 (diff)
objtool, kcsan: Add volatile read/write instrumentation to whitelist
[ Upstream commit 63646fcba5bb4b59a19031c21913f94e46a3d0d4 ] Adds KCSAN's volatile instrumentation to objtool's uaccess whitelist. Recent kernel change have shown that this was missing from the uaccess whitelist (since the first upstreamed version of KCSAN): mm/gup.o: warning: objtool: fault_in_readable+0x101: call to __tsan_volatile_write1() with UACCESS enabled Fixes: 75d75b7a4d54 ("kcsan: Support distinguishing volatile accesses") Signed-off-by: Marco Elver <elver@google.com> Reviewed-by: Dmitry Vyukov <dvyukov@google.com> Signed-off-by: Paul E. McKenney <paulmck@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'tools')
-rw-r--r--tools/objtool/check.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/tools/objtool/check.c b/tools/objtool/check.c
index ea80b29b9913..5d64b673da2d 100644
--- a/tools/objtool/check.c
+++ b/tools/objtool/check.c
@@ -802,6 +802,16 @@ static const char *uaccess_safe_builtin[] = {
"__tsan_read_write4",
"__tsan_read_write8",
"__tsan_read_write16",
+ "__tsan_volatile_read1",
+ "__tsan_volatile_read2",
+ "__tsan_volatile_read4",
+ "__tsan_volatile_read8",
+ "__tsan_volatile_read16",
+ "__tsan_volatile_write1",
+ "__tsan_volatile_write2",
+ "__tsan_volatile_write4",
+ "__tsan_volatile_write8",
+ "__tsan_volatile_write16",
"__tsan_atomic8_load",
"__tsan_atomic16_load",
"__tsan_atomic32_load",