diff options
author | Peter Zijlstra <a.p.zijlstra@chello.nl> | 2012-04-25 02:30:36 +0400 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2012-05-09 17:00:53 +0400 |
commit | 0ce90475dcdbe90affc218e9688c8401e468e84d (patch) | |
tree | 30771f6a6791af0214c5e7d57958f6395f3b97f5 /include | |
parent | c22402a2f76e88b04b7a8b6c0597ad9ba6fd71de (diff) | |
download | linux-0ce90475dcdbe90affc218e9688c8401e468e84d.tar.xz |
sched/fair: Add some serialization to the sched_domain load-balance walk
Since the sched_domain walk is completely unserialized (!SD_SERIALIZE)
it is possible that multiple cpus in the group get elected to do the
next level. Avoid this by adding some serialization.
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/n/tip-vqh9ai6s0ewmeakjz80w4qz6@git.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/sched.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index 4a559bf0622f..3cbfb55bde25 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -927,6 +927,7 @@ struct sched_group_power { struct sched_group { struct sched_group *next; /* Must be a circular list */ atomic_t ref; + int balance_cpu; unsigned int group_weight; struct sched_group_power *sgp; |