Re: [PATCH -tip v3 05/11] kcsan: Remove 'noinline' from __no_kcsan_or_inline

2020-05-29 Thread Peter Zijlstra
On Fri, May 29, 2020 at 08:36:56PM +0200, Marco Elver wrote: > > +/* Section for code which can't be instrumented at all */ > > +#define noinstr > > \ > > + noinline notrace __attribute((__section__(".noinstr.text"))) > >

Re: [PATCH -tip v3 05/11] kcsan: Remove 'noinline' from __no_kcsan_or_inline

2020-05-29 Thread Marco Elver
On Fri, 29 May 2020 at 19:08, Peter Zijlstra wrote: [...] > > Doesn't this mean we can do the below? If nobody complains about the lack of __no_kcsan_or_inline, let's do it. See comments below. > --- > Documentation/dev-tools/kcsan.rst | 6 -- > arch/x86/include/asm/bitops.h | 6

Re: [PATCH -tip v3 05/11] kcsan: Remove 'noinline' from __no_kcsan_or_inline

2020-05-29 Thread Peter Zijlstra
On Thu, May 21, 2020 at 04:20:41PM +0200, Marco Elver wrote: > Some compilers incorrectly inline small __no_kcsan functions, which then > results in instrumenting the accesses. For this reason, the 'noinline' > attribute was added to __no_kcsan_or_inline. All known versions of GCC > are affected

[PATCH -tip v3 05/11] kcsan: Remove 'noinline' from __no_kcsan_or_inline

2020-05-21 Thread Marco Elver
Some compilers incorrectly inline small __no_kcsan functions, which then results in instrumenting the accesses. For this reason, the 'noinline' attribute was added to __no_kcsan_or_inline. All known versions of GCC are affected by this. Supported version of Clang are unaffected, and never inlines