diff options
Diffstat (limited to 'kernel/sched.c')
-rw-r--r-- | kernel/sched.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index 3f7c5eb254e2..28c73f07efb2 100644 --- a/kernel/sched.c +++ b/kernel/sched.c | |||
@@ -594,18 +594,14 @@ enum { | |||
594 | SCHED_FEAT_NEW_FAIR_SLEEPERS = 1, | 594 | SCHED_FEAT_NEW_FAIR_SLEEPERS = 1, |
595 | SCHED_FEAT_WAKEUP_PREEMPT = 2, | 595 | SCHED_FEAT_WAKEUP_PREEMPT = 2, |
596 | SCHED_FEAT_START_DEBIT = 4, | 596 | SCHED_FEAT_START_DEBIT = 4, |
597 | SCHED_FEAT_TREE_AVG = 8, | 597 | SCHED_FEAT_HRTICK = 8, |
598 | SCHED_FEAT_APPROX_AVG = 16, | 598 | SCHED_FEAT_DOUBLE_TICK = 16, |
599 | SCHED_FEAT_HRTICK = 32, | ||
600 | SCHED_FEAT_DOUBLE_TICK = 64, | ||
601 | }; | 599 | }; |
602 | 600 | ||
603 | const_debug unsigned int sysctl_sched_features = | 601 | const_debug unsigned int sysctl_sched_features = |
604 | SCHED_FEAT_NEW_FAIR_SLEEPERS * 1 | | 602 | SCHED_FEAT_NEW_FAIR_SLEEPERS * 1 | |
605 | SCHED_FEAT_WAKEUP_PREEMPT * 1 | | 603 | SCHED_FEAT_WAKEUP_PREEMPT * 1 | |
606 | SCHED_FEAT_START_DEBIT * 1 | | 604 | SCHED_FEAT_START_DEBIT * 1 | |
607 | SCHED_FEAT_TREE_AVG * 0 | | ||
608 | SCHED_FEAT_APPROX_AVG * 0 | | ||
609 | SCHED_FEAT_HRTICK * 1 | | 605 | SCHED_FEAT_HRTICK * 1 | |
610 | SCHED_FEAT_DOUBLE_TICK * 0; | 606 | SCHED_FEAT_DOUBLE_TICK * 0; |
611 | 607 | ||
@@ -3886,7 +3882,7 @@ need_resched_nonpreemptible: | |||
3886 | 3882 | ||
3887 | if (prev->state && !(preempt_count() & PREEMPT_ACTIVE)) { | 3883 | if (prev->state && !(preempt_count() & PREEMPT_ACTIVE)) { |
3888 | if (unlikely((prev->state & TASK_INTERRUPTIBLE) && | 3884 | if (unlikely((prev->state & TASK_INTERRUPTIBLE) && |
3889 | unlikely(signal_pending(prev)))) { | 3885 | signal_pending(prev))) { |
3890 | prev->state = TASK_RUNNING; | 3886 | prev->state = TASK_RUNNING; |
3891 | } else { | 3887 | } else { |
3892 | deactivate_task(rq, prev, 1); | 3888 | deactivate_task(rq, prev, 1); |
@@ -6811,6 +6807,10 @@ static int ndoms_cur; /* number of sched domains in 'doms_cur' */ | |||
6811 | */ | 6807 | */ |
6812 | static cpumask_t fallback_doms; | 6808 | static cpumask_t fallback_doms; |
6813 | 6809 | ||
6810 | void __attribute__((weak)) arch_update_cpu_topology(void) | ||
6811 | { | ||
6812 | } | ||
6813 | |||
6814 | /* | 6814 | /* |
6815 | * Set up scheduler domains and groups. Callers must hold the hotplug lock. | 6815 | * Set up scheduler domains and groups. Callers must hold the hotplug lock. |
6816 | * For now this just excludes isolated cpus, but could be used to | 6816 | * For now this just excludes isolated cpus, but could be used to |
@@ -6820,6 +6820,7 @@ static int arch_init_sched_domains(const cpumask_t *cpu_map) | |||
6820 | { | 6820 | { |
6821 | int err; | 6821 | int err; |
6822 | 6822 | ||
6823 | arch_update_cpu_topology(); | ||
6823 | ndoms_cur = 1; | 6824 | ndoms_cur = 1; |
6824 | doms_cur = kmalloc(sizeof(cpumask_t), GFP_KERNEL); | 6825 | doms_cur = kmalloc(sizeof(cpumask_t), GFP_KERNEL); |
6825 | if (!doms_cur) | 6826 | if (!doms_cur) |
@@ -6924,7 +6925,7 @@ match2: | |||
6924 | } | 6925 | } |
6925 | 6926 | ||
6926 | #if defined(CONFIG_SCHED_MC) || defined(CONFIG_SCHED_SMT) | 6927 | #if defined(CONFIG_SCHED_MC) || defined(CONFIG_SCHED_SMT) |
6927 | static int arch_reinit_sched_domains(void) | 6928 | int arch_reinit_sched_domains(void) |
6928 | { | 6929 | { |
6929 | int err; | 6930 | int err; |
6930 | 6931 | ||