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.h22
1 files changed, 13 insertions, 9 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h
index b8c86648a2f9..765dffbb085e 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -273,11 +273,11 @@ extern void init_idle_bootup_task(struct task_struct *idle);
273extern int runqueue_is_locked(int cpu); 273extern int runqueue_is_locked(int cpu);
274 274
275#if defined(CONFIG_SMP) && defined(CONFIG_NO_HZ) 275#if defined(CONFIG_SMP) && defined(CONFIG_NO_HZ)
276extern void select_nohz_load_balancer(int stop_tick); 276extern void nohz_balance_enter_idle(int cpu);
277extern void set_cpu_sd_state_idle(void); 277extern void set_cpu_sd_state_idle(void);
278extern int get_nohz_timer_target(void); 278extern int get_nohz_timer_target(void);
279#else 279#else
280static inline void select_nohz_load_balancer(int stop_tick) { } 280static inline void nohz_balance_enter_idle(int cpu) { }
281static inline void set_cpu_sd_state_idle(void) { } 281static inline void set_cpu_sd_state_idle(void) { }
282#endif 282#endif
283 283
@@ -446,6 +446,9 @@ extern int get_dumpable(struct mm_struct *mm);
446#define MMF_VM_HUGEPAGE 17 /* set when VM_HUGEPAGE is set on vma */ 446#define MMF_VM_HUGEPAGE 17 /* set when VM_HUGEPAGE is set on vma */
447#define MMF_EXE_FILE_CHANGED 18 /* see prctl_set_mm_exe_file() */ 447#define MMF_EXE_FILE_CHANGED 18 /* see prctl_set_mm_exe_file() */
448 448
449#define MMF_HAS_UPROBES 19 /* has uprobes */
450#define MMF_RECALC_UPROBES 20 /* MMF_HAS_UPROBES can be wrong */
451
449#define MMF_INIT_MASK (MMF_DUMPABLE_MASK | MMF_DUMP_FILTER_MASK) 452#define MMF_INIT_MASK (MMF_DUMPABLE_MASK | MMF_DUMP_FILTER_MASK)
450 453
451struct sighand_struct { 454struct sighand_struct {
@@ -678,11 +681,6 @@ struct signal_struct {
678 * (notably. ptrace) */ 681 * (notably. ptrace) */
679}; 682};
680 683
681/* Context switch must be unlocked if interrupts are to be enabled */
682#ifdef __ARCH_WANT_INTERRUPTS_ON_CTXSW
683# define __ARCH_WANT_UNLOCKED_CTXSW
684#endif
685
686/* 684/*
687 * Bits in flags field of signal_struct. 685 * Bits in flags field of signal_struct.
688 */ 686 */
@@ -860,7 +858,6 @@ enum cpu_idle_type {
860#define SD_BALANCE_FORK 0x0008 /* Balance on fork, clone */ 858#define SD_BALANCE_FORK 0x0008 /* Balance on fork, clone */
861#define SD_BALANCE_WAKE 0x0010 /* Balance on wakeup */ 859#define SD_BALANCE_WAKE 0x0010 /* Balance on wakeup */
862#define SD_WAKE_AFFINE 0x0020 /* Wake task to waking CPU */ 860#define SD_WAKE_AFFINE 0x0020 /* Wake task to waking CPU */
863#define SD_PREFER_LOCAL 0x0040 /* Prefer to keep tasks local to this domain */
864#define SD_SHARE_CPUPOWER 0x0080 /* Domain members share cpu power */ 861#define SD_SHARE_CPUPOWER 0x0080 /* Domain members share cpu power */
865#define SD_SHARE_PKG_RESOURCES 0x0200 /* Domain members share cpu pkg resources */ 862#define SD_SHARE_PKG_RESOURCES 0x0200 /* Domain members share cpu pkg resources */
866#define SD_SERIALIZE 0x0400 /* Only a single load balancing instance */ 863#define SD_SERIALIZE 0x0400 /* Only a single load balancing instance */
@@ -954,7 +951,6 @@ struct sched_domain {
954 unsigned int smt_gain; 951 unsigned int smt_gain;
955 int flags; /* See SD_* */ 952 int flags; /* See SD_* */
956 int level; 953 int level;
957 int idle_buddy; /* cpu assigned to select_idle_sibling() */
958 954
959 /* Runtime fields. */ 955 /* Runtime fields. */
960 unsigned long last_balance; /* init to jiffies. units in jiffies */ 956 unsigned long last_balance; /* init to jiffies. units in jiffies */
@@ -1886,6 +1882,14 @@ static inline void rcu_copy_process(struct task_struct *p)
1886 1882
1887#endif 1883#endif
1888 1884
1885static inline void rcu_switch(struct task_struct *prev,
1886 struct task_struct *next)
1887{
1888#ifdef CONFIG_RCU_USER_QS
1889 rcu_user_hooks_switch(prev, next);
1890#endif
1891}
1892
1889static inline void tsk_restore_flags(struct task_struct *task, 1893static inline void tsk_restore_flags(struct task_struct *task,
1890 unsigned long orig_flags, unsigned long flags) 1894 unsigned long orig_flags, unsigned long flags)
1891{ 1895{