Including linux/kmod.h alone results in 1.5 MB of preprocessed output, even though it provides only a few functions and macros.
The header currently depends on: * __printf() -> linux/compiler_attributes.h, * ENOSYS -> linux/errno.h, * bool -> linux/types.h. Include only these files, reducing the preprocessed output to 10 kB. Signed-off-by: Petr Pavlu <[email protected]> --- include/linux/kmod.h | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/include/linux/kmod.h b/include/linux/kmod.h index 9a07c3215389..b9474a62a568 100644 --- a/include/linux/kmod.h +++ b/include/linux/kmod.h @@ -2,17 +2,9 @@ #ifndef __LINUX_KMOD_H__ #define __LINUX_KMOD_H__ -/* - * include/linux/kmod.h - */ - -#include <linux/umh.h> -#include <linux/gfp.h> -#include <linux/stddef.h> +#include <linux/compiler_attributes.h> #include <linux/errno.h> -#include <linux/compiler.h> -#include <linux/workqueue.h> -#include <linux/sysctl.h> +#include <linux/types.h> #ifdef CONFIG_MODULES /* modprobe exit status on success, -ve on error. Return value -- 2.54.0
