• S
    sched: dynticks idle load balancing · 46cb4b7c
    Siddha, Suresh B 提交于
    Fix the process idle load balancing in the presence of dynticks.  cpus for
    which ticks are stopped will sleep till the next event wakes it up.
    Potentially these sleeps can be for large durations and during which today,
    there is no periodic idle load balancing being done.
    
    This patch nominates an owner among the idle cpus, which does the idle load
    balancing on behalf of the other idle cpus.  And once all the cpus are
    completely idle, then we can stop this idle load balancing too.  Checks added
    in fast path are minimized.  Whenever there are busy cpus in the system, there
    will be an owner(idle cpu) doing the system wide idle load balancing.
    
    Open items:
    1. Intelligent owner selection (like an idle core in a busy package).
    2. Merge with rcu's nohz_cpu_mask?
    Signed-off-by: NSuresh Siddha <suresh.b.siddha@intel.com>
    Acked-by: NIngo Molnar <mingo@elte.hu>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Nick Piggin <nickpiggin@yahoo.com.au>
    Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
    46cb4b7c
tick-sched.c 15.2 KB