[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CANpmjNNtxW41H8ju6iog=ynMdEE0awa7GYabsuL6ZRihmVYQHw@mail.gmail.com>
Date: Tue, 28 Feb 2023 00:09:13 +0100
From: Marco Elver <elver@...gle.com>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: Alexander Potapenko <glider@...gle.com>,
Andrey Ryabinin <ryabinin.a.a@...il.com>,
Andrey Konovalov <andreyknvl@...il.com>,
Dmitry Vyukov <dvyukov@...gle.com>,
Vincenzo Frascino <vincenzo.frascino@....com>,
Michael Ellerman <mpe@...erman.id.au>,
Nicholas Piggin <npiggin@...il.com>,
Christophe Leroy <christophe.leroy@...roup.eu>,
Liam Howlett <liam.howlett@...cle.com>,
kasan-dev@...glegroups.com, linuxppc-dev@...ts.ozlabs.org,
linux-kernel@...r.kernel.org, linux-mm@...ck.org,
Daniel Axtens <dja@...ens.net>,
kernel test robot <lkp@...el.com>
Subject: Re: [PATCH mm] kasan, powerpc: Don't rename memintrinsics if compiler
adds prefixes
On Mon, 27 Feb 2023 at 23:16, Andrew Morton <akpm@...ux-foundation.org> wrote:
>
> On Mon, 27 Feb 2023 10:47:27 +0100 Marco Elver <elver@...gle.com> wrote:
>
> > 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/ [1]
> > Link: https://lore.kernel.org/oe-kbuild-all/202302271348.U5lvmo0S-lkp@intel.com/
> > Reported-by: kernel test robot <lkp@...el.com>
> > Signed-off-by: Marco Elver <elver@...gle.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 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".
Thanks,
-- Marco
Powered by blists - more mailing lists