Thread (4 messages) 4 messages, 3 authors, 2023-02-28

Re: [PATCH mm] kasan, powerpc: Don't rename memintrinsics if compiler adds prefixes

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2023-02-28 11:58:14
Also in: linux-mm, lkml

Marco Elver [off-list ref] writes:
On Mon, 27 Feb 2023 at 23:16, Andrew Morton [off-list ref] wrote:
quoted
On Mon, 27 Feb 2023 10:47:27 +0100 Marco Elver [off-list ref] wrote:
quoted
With appropriate compiler support [1], KASAN builds use __asan prefixed
meminstrinsics, and KASAN no longer overrides memcpy/memset/memmove.

If compiler support is detected (CC_HAS_KASAN_MEMINTRINSIC_PREFIX),
define memintrinsics normally (do not prefix '__').

On powerpc, KASAN is the only user of __mem functions, which are used to
define instrumented memintrinsics. Alias the normal versions for KASAN
to use in its implementation.

Link: https://lore.kernel.org/all/20230224085942.1791837-1-elver@google.com/ (local) [1]
Link: https://lore.kernel.org/oe-kbuild-all/202302271348.U5lvmo0S-lkp@intel.com/ (local)
Reported-by: kernel test robot <redacted>
Signed-off-by: Marco Elver <elver@google.com>
Seems this is a fix against "kasan: treat meminstrinsic as builtins in
uninstrumented files", so I'll plan to fold this patch into that patch.
Yes, that looks right.

If a powerpc maintainer could take a quick look as well would be good.
The patch looks OK to me. It builds for various configs and I did a few
test boots with KASAN enabled, everything seems normal.

Acked-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc)

The maze of memcpy/memmove/memset definitions and redefinitions isn't
the simplest - I hope in a few years we can delete all the old code
(before CC_HAS_KASAN_MEMINTRINSIC_PREFIX), and let the compilers just
"do the right thing".
Yeah that would be nice.

cheers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help