[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230208164011.2287122-3-arnd@kernel.org>
Date: Wed, 8 Feb 2023 17:39:57 +0100
From: Arnd Bergmann <arnd@...nel.org>
To: Josh Poimboeuf <jpoimboe@...nel.org>,
Peter Zijlstra <peterz@...radead.org>
Cc: kasan-dev@...glegroups.com, Marco Elver <elver@...gle.com>,
Dmitry Vyukov <dvyukov@...gle.com>,
Alexander Potapenko <glider@...gle.com>,
Andrey Ryabinin <ryabinin.a.a@...il.com>,
Vincenzo Frascino <vincenzo.frascino@....com>,
Andrey Konovalov <andreyknvl@...il.com>,
Arnd Bergmann <arnd@...db.de>, Borislav Petkov <bp@...e.de>,
Miroslav Benes <mbenes@...e.cz>,
Michael Ellerman <mpe@...erman.id.au>,
Sathvika Vasireddy <sv@...ux.ibm.com>,
linux-kernel@...r.kernel.org
Subject: [PATCH 3/4] objdump: add UACCESS exception for more stringops
From: Arnd Bergmann <arnd@...db.de>
The memset/memmove/memcpy string functions are wrapped in different
ways based on configuration. While the __asan_mem* functions already
have exceptions, the ones called from those do not:
mm/kasan/shadow.o: warning: objtool: __asan_memset+0x30: call to __memset() with UACCESS enabled
mm/kasan/shadow.o: warning: objtool: __asan_memmove+0x51: call to __memmove() with UACCESS enabled
mm/kasan/shadow.o: warning: objtool: __asan_memcpy+0x51: call to __memcpy() with UACCESS enabled
vmlinux.o: warning: objtool: .altinstr_replacement+0x1406: call to memcpy_erms() with UACCESS enabled
vmlinux.o: warning: objtool: .altinstr_replacement+0xed0: call to memset_erms() with UACCESS enabled
vmlinux.o: warning: objtool: memset+0x4: call to memset_orig() with UACCESS enabled
vmlinux.o: warning: objtool: memset+0x4: call to memset_orig() with UACCESS enabled
Add these to the list as well.
Signed-off-by: Arnd Bergmann <arnd@...db.de>
---
tools/objtool/check.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/tools/objtool/check.c b/tools/objtool/check.c
index 0f67c6a8bc98..e8fb3bf7a2e3 100644
--- a/tools/objtool/check.c
+++ b/tools/objtool/check.c
@@ -1248,6 +1248,13 @@ static const char *uaccess_safe_builtin[] = {
"clear_user_erms",
"clear_user_rep_good",
"clear_user_original",
+ "__memset",
+ "__memcpy",
+ "__memmove",
+ "memset_erms",
+ "memcpy_erms",
+ "memset_orig",
+ "memcpy_orig",
NULL
};
--
2.39.1
Powered by blists - more mailing lists