On Wed, Jul 08, 2026 at 05:44:30PM +0200, Petr Pavlu wrote:
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 petr.pavlu@suse.com
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
LGTM. Thank you.
Reviewed-by: Aaron Tomlin atomlin@atomlin.com