[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231216033300.3553457-10-kent.overstreet@linux.dev>
Date: Fri, 15 Dec 2023 22:32:48 -0500
From: Kent Overstreet <kent.overstreet@...ux.dev>
To: linux-kernel@...r.kernel.org,
linux-mm@...ck.org,
linux-fsdevel@...r.kernel.org
Cc: Kent Overstreet <kent.overstreet@...ux.dev>,
tglx@...utronix.de,
x86@...nel.org,
tj@...nel.org,
peterz@...radead.org,
mathieu.desnoyers@...icios.com,
paulmck@...nel.org,
keescook@...omium.org,
dave.hansen@...ux.intel.com,
mingo@...hat.com,
will@...nel.org,
longman@...hat.com,
boqun.feng@...il.com,
brauner@...nel.org
Subject: [PATCH 42/50] sem: Split out sem_types.h
More sched.h dependency pruning.
Signed-off-by: Kent Overstreet <kent.overstreet@...ux.dev>
---
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
Powered by blists - more mailing lists