diff -drupN a/include/linux/module.h b/include/linux/module.h --- a/include/linux/module.h 2018-08-06 17:23:04.000000000 +0300 +++ b/include/linux/module.h 2022-06-12 05:28:14.000000000 +0300 @@ -20,6 +20,7 @@ #include #include /* only as arch move module.h -> extable.h */ #include +#include #include #include @@ -127,13 +128,13 @@ extern void cleanup_module(void); /* Each module must use one module_init(). */ #define module_init(initfn) \ - static inline initcall_t __inittest(void) \ + static inline initcall_t __maybe_unused __inittest(void) \ { return initfn; } \ int init_module(void) __attribute__((alias(#initfn))); /* This is only required if you want to be unloadable. */ #define module_exit(exitfn) \ - static inline exitcall_t __exittest(void) \ + static inline exitcall_t __maybe_unused __exittest(void) \ { return exitfn; } \ void cleanup_module(void) __attribute__((alias(#exitfn))); @@ -349,6 +350,10 @@ struct module { const unsigned long *crcs; unsigned int num_syms; +#ifdef CONFIG_CFI_CLANG + cfi_check_fn cfi_check; +#endif + /* Kernel parameters. */ #ifdef CONFIG_SYSFS struct mutex param_lock;