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.h28
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
38struct exec_domain; 40struct exec_domain;
39 41
40/* 42/*
@@ -176,6 +178,23 @@ extern void trap_init(void);
176extern void update_process_times(int user); 178extern void update_process_times(int user);
177extern void scheduler_tick(void); 179extern void scheduler_tick(void);
178 180
181#ifdef CONFIG_DETECT_SOFTLOCKUP
182extern void softlockup_tick(struct pt_regs *regs);
183extern void spawn_softlockup_task(void);
184extern void touch_softlockup_watchdog(void);
185#else
186static inline void softlockup_tick(struct pt_regs *regs)
187{
188}
189static inline void spawn_softlockup_task(void)
190{
191}
192static 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
546extern void partition_sched_domains(cpumask_t *partition1, 565extern 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 */
550extern cpumask_t cpu_isolated_map;
551extern void init_sched_build_groups(struct sched_group groups[],
552 cpumask_t span, int (*group_fn)(int cpu));
553extern 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