More sched.h dependency pruning. Signed-off-by: Kent Overstreet <kent.overstreet@xxxxxxxxx> --- include/linux/audit.h | 1 + include/linux/sched.h | 3 ++- include/linux/sem.h | 10 +--------- include/linux/sem_types.h | 13 +++++++++++++ 4 files changed, 17 insertions(+), 10 deletions(-) create mode 100644 include/linux/sem_types.h diff --git a/include/linux/audit.h b/include/linux/audit.h index 51b1b7054a23..93d97b56e1e4 100644 --- a/include/linux/audit.h +++ b/include/linux/audit.h @@ -400,6 +400,7 @@ static inline void audit_ptrace(struct task_struct *t) } /* Private API (for audit.c only) */ +struct kern_ipc_perm; extern void __audit_ipc_obj(struct kern_ipc_perm *ipcp); extern void __audit_ipc_set_perm(unsigned long qbytes, uid_t uid, gid_t gid, umode_t mode); extern void __audit_bprm(struct linux_binprm *bprm); diff --git a/include/linux/sched.h b/include/linux/sched.h index 157e7af36bb7..98885e3a81e8 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -13,12 +13,13 @@ #include <linux/irqflags_types.h> #include <linux/pid_types.h> -#include <linux/sem.h> +#include <linux/sem_types.h> #include <linux/shm.h> #include <linux/kmsan_types.h> #include <linux/mutex_types.h> #include <linux/plist_types.h> #include <linux/hrtimer_types.h> +#include <linux/timer_types.h> #include <linux/seccomp_types.h> #include <linux/nodemask_types.h> #include <linux/rcupdate.h> diff --git a/include/linux/sem.h b/include/linux/sem.h index 5608a500c43e..c4deefe42aeb 100644 --- a/include/linux/sem.h +++ b/include/linux/sem.h @@ -3,25 +3,17 @@ #define _LINUX_SEM_H #include <uapi/linux/sem.h> +#include <linux/sem_types.h> struct task_struct; -struct sem_undo_list; #ifdef CONFIG_SYSVIPC -struct sysv_sem { - struct sem_undo_list *undo_list; -}; - extern int copy_semundo(unsigned long clone_flags, struct task_struct *tsk); extern void exit_sem(struct task_struct *tsk); #else -struct sysv_sem { - /* empty */ -}; - static inline int copy_semundo(unsigned long clone_flags, struct task_struct *tsk) { return 0; diff --git a/include/linux/sem_types.h b/include/linux/sem_types.h new file mode 100644 index 000000000000..73df1971a7ae --- /dev/null +++ b/include/linux/sem_types.h @@ -0,0 +1,13 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _LINUX_SEM_TYPES_H +#define _LINUX_SEM_TYPES_H + +struct sem_undo_list; + +struct sysv_sem { +#ifdef CONFIG_SYSVIPC + struct sem_undo_list *undo_list; +#endif +}; + +#endif /* _LINUX_SEM_TYPES_H */ -- 2.43.0