aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorSrivatsa Vaddagiri <vatsa@linux.vnet.ibm.com>2007-10-15 11:00:09 -0400
committerIngo Molnar <mingo@elte.hu>2007-10-15 11:00:09 -0400
commit24e377a83220ef05c9b5bec7e01d65eed6609aa6 (patch)
tree9303b3d9f91ee39517d379aaac06c0432be8a9b8 /include/linux
parent9b5b77512dce239fa168183fa71896712232e95a (diff)
sched: add fair-user scheduler
Enable user-id based fair group scheduling. This is useful for anyone who wants to test the group scheduler w/o having to enable CONFIG_CGROUPS. A separate scheduling group (i.e struct task_grp) is automatically created for every new user added to the system. Upon uid change for a task, it is made to move to the corresponding scheduling group. A /proc tunable (/proc/root_user_share) is also provided to tune root user's quota of cpu bandwidth. Signed-off-by: Srivatsa Vaddagiri <vatsa@linux.vnet.ibm.com> Signed-off-by: Dhaval Giani <dhaval@linux.vnet.ibm.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/sched.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h
index 03c13b663e4b..d0cc58311b13 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -597,6 +597,10 @@ struct user_struct {
597 /* Hash table maintenance information */ 597 /* Hash table maintenance information */
598 struct hlist_node uidhash_node; 598 struct hlist_node uidhash_node;
599 uid_t uid; 599 uid_t uid;
600
601#ifdef CONFIG_FAIR_USER_SCHED
602 struct task_grp *tg;
603#endif
600}; 604};
601 605
602extern struct user_struct *find_user(uid_t); 606extern struct user_struct *find_user(uid_t);