mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-04 01:49:36 +00:00
![Ingo Molnar](/assets/img/avatar_default.png)
The <linux/sched/autogroup.h> file is a largely self-contained header and users of it either don't need <linux/sched.h> - or have already included it. Add a 'task_struct' predeclaration to make it build standalone. This reduces the size of the header dependency graph. Acked-by: Linus Torvalds <torvalds@linux-foundation.org> Cc: Mike Galbraith <efault@gmx.de> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: linux-kernel@vger.kernel.org Signed-off-by: Ingo Molnar <mingo@kernel.org>
31 lines
1.2 KiB
C
31 lines
1.2 KiB
C
#ifndef _LINUX_SCHED_AUTOGROUP_H
|
|
#define _LINUX_SCHED_AUTOGROUP_H
|
|
|
|
struct signal_struct;
|
|
struct task_struct;
|
|
struct task_group;
|
|
struct seq_file;
|
|
|
|
#ifdef CONFIG_SCHED_AUTOGROUP
|
|
extern void sched_autogroup_create_attach(struct task_struct *p);
|
|
extern void sched_autogroup_detach(struct task_struct *p);
|
|
extern void sched_autogroup_fork(struct signal_struct *sig);
|
|
extern void sched_autogroup_exit(struct signal_struct *sig);
|
|
extern void sched_autogroup_exit_task(struct task_struct *p);
|
|
#ifdef CONFIG_PROC_FS
|
|
extern void proc_sched_autogroup_show_task(struct task_struct *p, struct seq_file *m);
|
|
extern int proc_sched_autogroup_set_nice(struct task_struct *p, int nice);
|
|
#endif
|
|
#else
|
|
static inline void sched_autogroup_create_attach(struct task_struct *p) { }
|
|
static inline void sched_autogroup_detach(struct task_struct *p) { }
|
|
static inline void sched_autogroup_fork(struct signal_struct *sig) { }
|
|
static inline void sched_autogroup_exit(struct signal_struct *sig) { }
|
|
static inline void sched_autogroup_exit_task(struct task_struct *p) { }
|
|
#endif
|
|
|
|
#ifdef CONFIG_CGROUP_SCHED
|
|
extern struct task_group root_task_group;
|
|
#endif /* CONFIG_CGROUP_SCHED */
|
|
|
|
#endif /* _LINUX_SCHED_AUTOGROUP_H */
|