Merge remote-tracking branch 'lsk/v3.10/topic/gator' into linux-linaro-lsk
[firefly-linux-kernel-4.4.55.git] / kernel / sched / sched.h
index dfa31d533e3f5d46fe8fe3715c45afa67cbaebad..0d19ede6849e8a5ecbd835b8c76440f9a8c57439 100644 (file)
@@ -142,7 +142,7 @@ struct task_group {
 
        atomic_t load_weight;
        atomic64_t load_avg;
-       atomic_t runnable_avg;
+       atomic_t runnable_avg, usage_avg;
 #endif
 
 #ifdef CONFIG_RT_GROUP_SCHED
@@ -279,7 +279,7 @@ struct cfs_rq {
 #endif /* CONFIG_FAIR_GROUP_SCHED */
 /* These always depend on CONFIG_FAIR_GROUP_SCHED */
 #ifdef CONFIG_FAIR_GROUP_SCHED
-       u32 tg_runnable_contrib;
+       u32 tg_runnable_contrib, tg_usage_contrib;
        u64 tg_load_contrib;
 #endif /* CONFIG_FAIR_GROUP_SCHED */
 
@@ -464,6 +464,10 @@ struct rq {
        int active_balance;
        int push_cpu;
        struct cpu_stop_work active_balance_work;
+#ifdef CONFIG_SCHED_HMP
+       struct task_struct *migrate_task;
+       int wake_for_idle_pull;
+#endif
        /* cpu of this runqueue: */
        int cpu;
        int online;
@@ -642,6 +646,12 @@ static inline unsigned int group_first_cpu(struct sched_group *group)
 
 extern int group_balance_cpu(struct sched_group *sg);
 
+#ifdef CONFIG_SCHED_HMP
+static LIST_HEAD(hmp_domains);
+DECLARE_PER_CPU(struct hmp_domain *, hmp_cpu_domain);
+#define hmp_cpu_domain(cpu)    (per_cpu(hmp_cpu_domain, (cpu)))
+#endif /* CONFIG_SCHED_HMP */
+
 #endif /* CONFIG_SMP */
 
 #include "stats.h"