diff options
Diffstat (limited to 'include/linux/sched.h')
| -rw-r--r-- | include/linux/sched.h | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index dec5827c7742..ea1b5f32ec5c 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
| @@ -35,6 +35,8 @@ | |||
| 35 | #include <linux/topology.h> | 35 | #include <linux/topology.h> |
| 36 | #include <linux/seccomp.h> | 36 | #include <linux/seccomp.h> |
| 37 | 37 | ||
| 38 | #include <linux/auxvec.h> /* For AT_VECTOR_SIZE */ | ||
| 39 | |||
| 38 | struct exec_domain; | 40 | struct exec_domain; |
| 39 | 41 | ||
| 40 | /* | 42 | /* |
| @@ -176,6 +178,23 @@ extern void trap_init(void); | |||
| 176 | extern void update_process_times(int user); | 178 | extern void update_process_times(int user); |
| 177 | extern void scheduler_tick(void); | 179 | extern void scheduler_tick(void); |
| 178 | 180 | ||
| 181 | #ifdef CONFIG_DETECT_SOFTLOCKUP | ||
| 182 | extern void softlockup_tick(struct pt_regs *regs); | ||
| 183 | extern void spawn_softlockup_task(void); | ||
| 184 | extern void touch_softlockup_watchdog(void); | ||
| 185 | #else | ||
| 186 | static inline void softlockup_tick(struct pt_regs *regs) | ||
| 187 | { | ||
| 188 | } | ||
| 189 | static inline void spawn_softlockup_task(void) | ||
| 190 | { | ||
| 191 | } | ||
| 192 | static inline void touch_softlockup_watchdog(void) | ||
| 193 | { | ||
| 194 | } | ||
| 195 | #endif | ||
| 196 | |||
| 197 | |||
| 179 | /* Attach to any functions which should be ignored in wchan output. */ | 198 | /* Attach to any functions which should be ignored in wchan output. */ |
| 180 | #define __sched __attribute__((__section__(".sched.text"))) | 199 | #define __sched __attribute__((__section__(".sched.text"))) |
| 181 | /* Is this address in the __sched functions? */ | 200 | /* Is this address in the __sched functions? */ |
| @@ -244,7 +263,7 @@ struct mm_struct { | |||
| 244 | mm_counter_t _rss; | 263 | mm_counter_t _rss; |
| 245 | mm_counter_t _anon_rss; | 264 | mm_counter_t _anon_rss; |
| 246 | 265 | ||
| 247 | unsigned long saved_auxv[42]; /* for /proc/PID/auxv */ | 266 | unsigned long saved_auxv[AT_VECTOR_SIZE]; /* for /proc/PID/auxv */ |
| 248 | 267 | ||
| 249 | unsigned dumpable:2; | 268 | unsigned dumpable:2; |
| 250 | cpumask_t cpu_vm_mask; | 269 | cpumask_t cpu_vm_mask; |
| @@ -545,13 +564,6 @@ struct sched_domain { | |||
| 545 | 564 | ||
| 546 | extern void partition_sched_domains(cpumask_t *partition1, | 565 | extern void partition_sched_domains(cpumask_t *partition1, |
| 547 | cpumask_t *partition2); | 566 | cpumask_t *partition2); |
| 548 | #ifdef ARCH_HAS_SCHED_DOMAIN | ||
| 549 | /* Useful helpers that arch setup code may use. Defined in kernel/sched.c */ | ||
| 550 | extern cpumask_t cpu_isolated_map; | ||
| 551 | extern void init_sched_build_groups(struct sched_group groups[], | ||
| 552 | cpumask_t span, int (*group_fn)(int cpu)); | ||
| 553 | extern void cpu_attach_domain(struct sched_domain *sd, int cpu); | ||
| 554 | #endif /* ARCH_HAS_SCHED_DOMAIN */ | ||
| 555 | #endif /* CONFIG_SMP */ | 567 | #endif /* CONFIG_SMP */ |
| 556 | 568 | ||
| 557 | 569 | ||
