Messages in this thread | | | From | Nick Desaulniers <> | Date | Thu, 14 Oct 2021 11:29:34 -0700 | Subject | Re: [PATCH V3 06/49] compiler_types.h: Add __noinstr_section() for noinstr |
| |
On Wed, Oct 13, 2021 at 8:34 PM Lai Jiangshan <jiangshanlai@gmail.com> wrote: > > From: Lai Jiangshan <laijs@linux.alibaba.com> > > And it will be extended for C entry code. > > Cc: Borislav Petkov <bp@alien8.de> > Reviewed-by: Kees Cook <keescook@chromium.org> > Signed-off-by: Lai Jiangshan <laijs@linux.alibaba.com> > --- > include/linux/compiler_types.h | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/include/linux/compiler_types.h b/include/linux/compiler_types.h > index b6ff83a714ca..3c77631c68bd 100644 > --- a/include/linux/compiler_types.h > +++ b/include/linux/compiler_types.h > @@ -208,10 +208,12 @@ struct ftrace_likely_data { > #endif > > /* Section for code which can't be instrumented at all */ > -#define noinstr \ > - noinline notrace __attribute((__section__(".noinstr.text"))) \ > +#define __noinstr_section(section) \ > + noinline notrace __attribute((__section__(section))) \
Can we use __section(section) here (from include/linux/compiler_attributes.h)? I kind of can't stand seeing attributes open coded.
> __no_kcsan __no_sanitize_address __no_profile __no_sanitize_coverage > > +#define noinstr __noinstr_section(".noinstr.text") > + > #endif /* __KERNEL__ */ > > #endif /* __ASSEMBLY__ */ > -- > 2.19.1.6.gb485710b >
-- Thanks, ~Nick Desaulniers
| |