• Peter Zijlstra's avatar
    sched: update aggregate when holding the RQs · 4d8d595d
    Peter Zijlstra authored
    It was observed that in __update_group_shares_cpu()
    
      rq_weight > aggregate()->rq_weight
    
    This is caused by forks/wakeups in between the initial aggregate pass and
    locking of the RQs for load balance. To avoid this situation partially re-do
    the aggregation once we have the RQs locked (which avoids new tasks from
    appearing).
    Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
    Cc: Srivatsa Vaddagiri <vatsa@linux.vnet.ibm.com>
    Cc: Mike Galbraith <efault@gmx.de>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    4d8d595d
sched.c 221 KB