Messages in this thread Patch in this message | | | From | Nikhil Rao <> | Subject | [PATCH v1 12/19] sched: Update update_sd_lb_stats() to use u64 | Date | Sun, 1 May 2011 18:19:10 -0700 |
| |
Update update_sd_lb_stats() and helper functions to use u64/s64 for weight calculations.
Signed-off-by: Nikhil Rao <ncrao@google.com> --- kernel/sched_fair.c | 22 +++++++++++----------- 1 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c index 992b9f4..152b472 100644 --- a/kernel/sched_fair.c +++ b/kernel/sched_fair.c @@ -2308,23 +2308,23 @@ static int move_tasks(struct rq *this_rq, int this_cpu, struct rq *busiest, * during load balancing. */ struct sd_lb_stats { - struct sched_group *busiest; /* Busiest group in this sd */ - struct sched_group *this; /* Local group in this sd */ - unsigned long total_load; /* Total load of all groups in sd */ - unsigned long total_pwr; /* Total power of all groups in sd */ - unsigned long avg_load; /* Average load across all groups in sd */ + struct sched_group *busiest; /* Busiest group in this sd */ + struct sched_group *this; /* Local group in this sd */ + u64 total_load; /* Total load of all groups in sd */ + unsigned long total_pwr; /* Total power of all groups in sd */ + u64 avg_load; /* Avg load across all groups in sd */ /** Statistics of this group */ - unsigned long this_load; - unsigned long this_load_per_task; + u64 this_load; + u64 this_load_per_task; unsigned long this_nr_running; unsigned long this_has_capacity; unsigned int this_idle_cpus; /* Statistics of the busiest group */ unsigned int busiest_idle_cpus; - unsigned long max_load; - unsigned long busiest_load_per_task; + u64 max_load; + u64 busiest_load_per_task; unsigned long busiest_nr_running; unsigned long busiest_group_capacity; unsigned long busiest_has_capacity; @@ -2461,8 +2461,8 @@ static inline void update_sd_power_savings_stats(struct sched_group *group, group_first_cpu(group) > group_first_cpu(sds->group_min))) { sds->group_min = group; sds->min_nr_running = sgs->sum_nr_running; - sds->min_load_per_task = sgs->sum_weighted_load / - sgs->sum_nr_running; + sds->min_load_per_task = div_u64(sgs->sum_weighted_load, + sgs->sum_nr_running); } /* -- 1.7.3.1
| |