]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - kernel/sched/sched.h
Merge remote-tracking branch 'regulator/fix/core' into regulator-linus
[karo-tx-linux.git] / kernel / sched / sched.h
index 600e2291a75c4092dd6ff400f869c91edcc7903f..31cc02ebc54ed82f5bf3f62fae879a1c0343a97d 100644 (file)
@@ -278,7 +278,7 @@ extern void init_cfs_bandwidth(struct cfs_bandwidth *cfs_b);
 extern int sched_group_set_shares(struct task_group *tg, unsigned long shares);
 
 extern void __refill_cfs_bandwidth_runtime(struct cfs_bandwidth *cfs_b);
-extern void __start_cfs_bandwidth(struct cfs_bandwidth *cfs_b);
+extern void __start_cfs_bandwidth(struct cfs_bandwidth *cfs_b, bool force);
 extern void unthrottle_cfs_rq(struct cfs_rq *cfs_rq);
 
 extern void free_rt_sched_group(struct task_group *tg);
@@ -567,7 +567,7 @@ struct rq {
        struct root_domain *rd;
        struct sched_domain *sd;
 
-       unsigned long cpu_power;
+       unsigned long cpu_capacity;
 
        unsigned char idle_balance;
        /* For active balancing */
@@ -670,6 +670,8 @@ extern int migrate_swap(struct task_struct *, struct task_struct *);
 
 #ifdef CONFIG_SMP
 
+extern void sched_ttwu_pending(void);
+
 #define rcu_dereference_check_sched_domain(p) \
        rcu_dereference_check((p), \
                              lockdep_is_held(&sched_domains_mutex))
@@ -728,15 +730,15 @@ DECLARE_PER_CPU(struct sched_domain *, sd_numa);
 DECLARE_PER_CPU(struct sched_domain *, sd_busy);
 DECLARE_PER_CPU(struct sched_domain *, sd_asym);
 
-struct sched_group_power {
+struct sched_group_capacity {
        atomic_t ref;
        /*
-        * CPU power of this group, SCHED_LOAD_SCALE being max power for a
-        * single CPU.
+        * CPU capacity of this group, SCHED_LOAD_SCALE being max capacity
+        * for a single CPU.
         */
-       unsigned int power, power_orig;
+       unsigned int capacity, capacity_orig;
        unsigned long next_update;
-       int imbalance; /* XXX unrelated to power but shared group state */
+       int imbalance; /* XXX unrelated to capacity but shared group state */
        /*
         * Number of busy cpus in this group.
         */
@@ -750,7 +752,7 @@ struct sched_group {
        atomic_t ref;
 
        unsigned int group_weight;
-       struct sched_group_power *sgp;
+       struct sched_group_capacity *sgc;
 
        /*
         * The CPUs this group covers.
@@ -773,7 +775,7 @@ static inline struct cpumask *sched_group_cpus(struct sched_group *sg)
  */
 static inline struct cpumask *sched_group_mask(struct sched_group *sg)
 {
-       return to_cpumask(sg->sgp->cpumask);
+       return to_cpumask(sg->sgc->cpumask);
 }
 
 /**
@@ -787,6 +789,10 @@ static inline unsigned int group_first_cpu(struct sched_group *group)
 
 extern int group_balance_cpu(struct sched_group *sg);
 
+#else
+
+static inline void sched_ttwu_pending(void) { }
+
 #endif /* CONFIG_SMP */
 
 #include "stats.h"
@@ -1167,7 +1173,7 @@ extern const struct sched_class idle_sched_class;
 
 #ifdef CONFIG_SMP
 
-extern void update_group_power(struct sched_domain *sd, int cpu);
+extern void update_group_capacity(struct sched_domain *sd, int cpu);
 
 extern void trigger_load_balance(struct rq *rq);