Messages in this thread | | | Date | Tue, 18 Oct 2022 07:28:29 -0700 | From | Kees Cook <> | Subject | Re: [PATCH] ftrace,kcfi: Separate f trace stub() and ftrace stub graph() |
| |
On October 18, 2022 6:18:46 AM PDT, Peter Zijlstra <peterz@infradead.org> wrote: >On Tue, Oct 18, 2022 at 02:35:16PM +0200, Peter Zijlstra wrote: >> --- a/include/asm-generic/vmlinux.lds.h >> +++ b/include/asm-generic/vmlinux.lds.h >> @@ -162,6 +162,16 @@ >> #define PATCHABLE_DISCARDS *(__patchable_function_entries) >> #endif >> >> +#ifndef ARCH_SUPPORTS_CFI_CLANG > >#ifndef CONFIG_ARCH_.. > >works much better as we found.
I nearly did this with an IS_ENABLED() recently. Saved by checkpatch! I wonder if it has similar checks for #ifdefs...
> >> +/* >> + * Simply points to ftrace_stub, but with the proper protocol. >> + * Defined by the linker script in linux/vmlinux.lds.h >> + */ >> +#define FTRACE_STUB_HACK ftrace_stub_graph = ftrace_stub; >> +#else >> +#define FTRACE_STUB_HACK >> +#endif > >Fixed up version available at: > > git://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git x86/urgent
Thanks for solving this! Just for future archeology, can you include the splat (I assume you hit a CFI splat) in the commit log, and/or how you triggered the problem? I usually find it helpful in trying to fix similar issues later, etc.
-- Kees Cook
| |