Merge remote-tracking branch 'lsk/v3.10/topic/arm64-cpuidle' into linux-linaro-lsk
[firefly-linux-kernel-4.4.55.git] / kernel / sched / core.c
index f44c01b9d713a1416552e8fb372a5331ebd857d3..aa08f6419bebf375901703adcec398b62232955b 100644 (file)
@@ -1635,9 +1635,9 @@ static void __sched_fork(struct task_struct *p)
 #ifdef CONFIG_SCHED_HMP
        /* keep LOAD_AVG_MAX in sync with fair.c if load avg series is changed */
 #define LOAD_AVG_MAX 47742
-       if (p->mm) {
-               p->se.avg.hmp_last_up_migration = 0;
-               p->se.avg.hmp_last_down_migration = 0;
+       p->se.avg.hmp_last_up_migration = 0;
+       p->se.avg.hmp_last_down_migration = 0;
+       if (hmp_task_should_forkboost(p)) {
                p->se.avg.load_avg_ratio = 1023;
                p->se.avg.load_avg_contrib =
                                (1023 * scale_load_down(p->se.load.weight));