2017-02-09 01:51:29 +08:00
|
|
|
#ifndef _LINUX_SCHED_AUTOGROUP_H
|
|
|
|
#define _LINUX_SCHED_AUTOGROUP_H
|
|
|
|
|
|
|
|
#include <linux/sched.h>
|
|
|
|
|
2017-02-02 01:41:24 +08:00
|
|
|
struct signal_struct;
|
2017-02-04 06:15:21 +08:00
|
|
|
struct task_group;
|
2017-02-02 01:41:24 +08:00
|
|
|
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
|
|
|
|
|
2017-02-04 06:15:21 +08:00
|
|
|
#ifdef CONFIG_CGROUP_SCHED
|
|
|
|
extern struct task_group root_task_group;
|
|
|
|
#endif /* CONFIG_CGROUP_SCHED */
|
|
|
|
|
2017-02-09 01:51:29 +08:00
|
|
|
#endif /* _LINUX_SCHED_AUTOGROUP_H */
|