[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Y+PlZi8mrHray92j@hirez.programming.kicks-ass.net>
Date: Wed, 8 Feb 2023 19:09:42 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: Arnd Bergmann <arnd@...nel.org>
Cc: Josh Poimboeuf <jpoimboe@...nel.org>, 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: Re: [PATCH 3/4] objdump: add UACCESS exception for more stringops
On Wed, Feb 08, 2023 at 05:39:57PM +0100, Arnd Bergmann wrote:
> 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
> };
Hmm, I wanted to go the other way and remove __asan_mem*.
https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git/commit/?h=sched/core-robot&id=79cdfdacd5b8d1ac77e24ccbc178bba0294d0d78
Powered by blists - more mailing lists