On Mon, 2011-12-12 at 20:21 +0100, Vincent Guittot wrote:
> With a lot of small tasks, the softirq sched is nearly never called
> when no_hz is enable. In this case the load_balance is mainly called with
> the newly_idle mode which doesn't update the cpu_power.
> Add a next_update field which ensure a maximum update period when
> there is short activity

> +     if (local_group) {
> +             if (idle != CPU_NEWLY_IDLE) {
> +                     if (balance_cpu != this_cpu) {
> +                             *balance = 0;
> +                             return;
> +                     }
> +                     update_group_power(sd, this_cpu);
> +             } else if (time_after_eq(jiffies, group->sgp->next_update))
> +                     update_group_power(sd, this_cpu);
>       }

Hmm, I would have expected it to be called from the NOHZ balancing path
instead of the new_idle path. Your changelog fails to mentions any
considerations on this..

Then again, its probably easier to keep update_group_power on this_cpu
than to allow a remote update of your cpu_power.

So I'm not opposed to this patch, I'd just like a little extra
clarification.

_______________________________________________
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev

Reply via email to