• Gregory Haskins's avatar
    sched: only balance our RT tasks within our domain · 637f5085
    Gregory Haskins authored
    We move the rt-overload data as the first global to per-domain
    reclassification.  This limits the scope of overload related cache-line
    bouncing to stay with a specified partition instead of affecting all
    cpus in the system.
    
    Finally, we limit the scope of find_lowest_cpu searches to the domain
    instead of the entire system.  Note that we would always respect domain
    boundaries even without this patch, but we first would scan potentially
    all cpus before whittling the list down.  Now we can avoid looking at
    RQs that are out of scope, again reducing cache-line hits.
    
    Note: In some cases, task->cpus_allowed will effectively reduce our search
    to within our domain.  However, I believe there are cases where the
    cpus_allowed mask may be all ones and therefore we err on the side of
    caution.  If it can be optimized later, so be it.
    Signed-off-by: default avatarGregory Haskins <ghaskins@novell.com>
    CC: Christoph Lameter <clameter@sgi.com>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    637f5085
sched_rt.c 19.9 KB