aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/sched.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r--include/linux/sched.h18
1 files changed, 12 insertions, 6 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h
index 682ef87da6eb..833f7dc2b8de 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -27,6 +27,7 @@
27#define CLONE_NEWUTS 0x04000000 /* New utsname group? */ 27#define CLONE_NEWUTS 0x04000000 /* New utsname group? */
28#define CLONE_NEWIPC 0x08000000 /* New ipcs */ 28#define CLONE_NEWIPC 0x08000000 /* New ipcs */
29#define CLONE_NEWUSER 0x10000000 /* New user namespace */ 29#define CLONE_NEWUSER 0x10000000 /* New user namespace */
30#define CLONE_NEWNET 0x40000000 /* New network namespace */
30 31
31/* 32/*
32 * Scheduling policies 33 * Scheduling policies
@@ -113,7 +114,7 @@ extern unsigned long avenrun[]; /* Load averages */
113 114
114#define FSHIFT 11 /* nr of bits of precision */ 115#define FSHIFT 11 /* nr of bits of precision */
115#define FIXED_1 (1<<FSHIFT) /* 1.0 as fixed-point */ 116#define FIXED_1 (1<<FSHIFT) /* 1.0 as fixed-point */
116#define LOAD_FREQ (5*HZ) /* 5 sec intervals */ 117#define LOAD_FREQ (5*HZ+1) /* 5 sec intervals */
117#define EXP_1 1884 /* 1/exp(5sec/1min) as fixed-point */ 118#define EXP_1 1884 /* 1/exp(5sec/1min) as fixed-point */
118#define EXP_5 2014 /* 1/exp(5sec/5min) */ 119#define EXP_5 2014 /* 1/exp(5sec/5min) */
119#define EXP_15 2037 /* 1/exp(5sec/15min) */ 120#define EXP_15 2037 /* 1/exp(5sec/15min) */
@@ -438,7 +439,7 @@ struct sighand_struct {
438 atomic_t count; 439 atomic_t count;
439 struct k_sigaction action[_NSIG]; 440 struct k_sigaction action[_NSIG];
440 spinlock_t siglock; 441 spinlock_t siglock;
441 struct list_head signalfd_list; 442 wait_queue_head_t signalfd_wqh;
442}; 443};
443 444
444struct pacct_struct { 445struct pacct_struct {
@@ -593,7 +594,7 @@ struct user_struct {
593#endif 594#endif
594 595
595 /* Hash table maintenance information */ 596 /* Hash table maintenance information */
596 struct list_head uidhash_list; 597 struct hlist_node uidhash_node;
597 uid_t uid; 598 uid_t uid;
598}; 599};
599 600
@@ -681,7 +682,7 @@ enum cpu_idle_type {
681#define SCHED_LOAD_SHIFT 10 682#define SCHED_LOAD_SHIFT 10
682#define SCHED_LOAD_SCALE (1L << SCHED_LOAD_SHIFT) 683#define SCHED_LOAD_SCALE (1L << SCHED_LOAD_SHIFT)
683 684
684#define SCHED_LOAD_SCALE_FUZZ (SCHED_LOAD_SCALE >> 1) 685#define SCHED_LOAD_SCALE_FUZZ SCHED_LOAD_SCALE
685 686
686#ifdef CONFIG_SMP 687#ifdef CONFIG_SMP
687#define SD_LOAD_BALANCE 1 /* Do load balancing on this domain. */ 688#define SD_LOAD_BALANCE 1 /* Do load balancing on this domain. */
@@ -904,6 +905,7 @@ struct sched_entity {
904 905
905 u64 exec_start; 906 u64 exec_start;
906 u64 sum_exec_runtime; 907 u64 sum_exec_runtime;
908 u64 prev_sum_exec_runtime;
907 u64 wait_start_fair; 909 u64 wait_start_fair;
908 u64 sleep_start_fair; 910 u64 sleep_start_fair;
909 911
@@ -1388,7 +1390,8 @@ extern void sched_exec(void);
1388#define sched_exec() {} 1390#define sched_exec() {}
1389#endif 1391#endif
1390 1392
1391extern void sched_clock_unstable_event(void); 1393extern void sched_clock_idle_sleep_event(void);
1394extern void sched_clock_idle_wakeup_event(u64 delta_ns);
1392 1395
1393#ifdef CONFIG_HOTPLUG_CPU 1396#ifdef CONFIG_HOTPLUG_CPU
1394extern void idle_task_exit(void); 1397extern void idle_task_exit(void);
@@ -1398,11 +1401,13 @@ static inline void idle_task_exit(void) {}
1398 1401
1399extern void sched_idle_next(void); 1402extern void sched_idle_next(void);
1400 1403
1401extern unsigned int sysctl_sched_granularity; 1404extern unsigned int sysctl_sched_latency;
1405extern unsigned int sysctl_sched_min_granularity;
1402extern unsigned int sysctl_sched_wakeup_granularity; 1406extern unsigned int sysctl_sched_wakeup_granularity;
1403extern unsigned int sysctl_sched_batch_wakeup_granularity; 1407extern unsigned int sysctl_sched_batch_wakeup_granularity;
1404extern unsigned int sysctl_sched_stat_granularity; 1408extern unsigned int sysctl_sched_stat_granularity;
1405extern unsigned int sysctl_sched_runtime_limit; 1409extern unsigned int sysctl_sched_runtime_limit;
1410extern unsigned int sysctl_sched_compat_yield;
1406extern unsigned int sysctl_sched_child_runs_first; 1411extern unsigned int sysctl_sched_child_runs_first;
1407extern unsigned int sysctl_sched_features; 1412extern unsigned int sysctl_sched_features;
1408 1413
@@ -1469,6 +1474,7 @@ static inline struct user_struct *get_uid(struct user_struct *u)
1469} 1474}
1470extern void free_uid(struct user_struct *); 1475extern void free_uid(struct user_struct *);
1471extern void switch_uid(struct user_struct *); 1476extern void switch_uid(struct user_struct *);
1477extern void release_uids(struct user_namespace *ns);
1472 1478
1473#include <asm/current.h> 1479#include <asm/current.h>
1474 1480