Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 121343
b: refs/heads/master
c: d65bd5e
h: refs/heads/master
i:
  121341: a828c04
  121339: 3faf8ac
  121335: 3b90824
  121327: 6ae45db
  121311: 882c8ed
  121279: ae4a5d8
  121215: 2883d1d
  121087: 0d6bdd5
  120831: a6e573c
v: v3
  • Loading branch information
Heiko Carstens authored and Ingo Molnar committed Dec 12, 2008
1 parent f6eb052 commit 57a60d0
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 3 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: ee79d1bdb6a10499e53f80b1e8d14110215178ba
refs/heads/master: d65bd5ecb2bd166cea4952a59b7e16cc3ad6ef6c
8 changes: 6 additions & 2 deletions trunk/kernel/sched.c
Original file line number Diff line number Diff line change
Expand Up @@ -7774,17 +7774,21 @@ void partition_sched_domains(int ndoms_new, cpumask_t *doms_new,
struct sched_domain_attr *dattr_new)
{
int i, j, n;
int new_topology;

mutex_lock(&sched_domains_mutex);

/* always unregister in case we don't destroy any domains */
unregister_sched_domain_sysctl();

/* Let architecture update cpu core mappings. */
new_topology = arch_update_cpu_topology();

n = doms_new ? ndoms_new : 0;

/* Destroy deleted domains */
for (i = 0; i < ndoms_cur; i++) {
for (j = 0; j < n; j++) {
for (j = 0; j < n && !new_topology; j++) {
if (cpus_equal(doms_cur[i], doms_new[j])
&& dattrs_equal(dattr_cur, i, dattr_new, j))
goto match1;
Expand All @@ -7804,7 +7808,7 @@ void partition_sched_domains(int ndoms_new, cpumask_t *doms_new,

/* Build new domains */
for (i = 0; i < ndoms_new; i++) {
for (j = 0; j < ndoms_cur; j++) {
for (j = 0; j < ndoms_cur && !new_topology; j++) {
if (cpus_equal(doms_new[i], doms_cur[j])
&& dattrs_equal(dattr_new, i, dattr_cur, j))
goto match2;
Expand Down

0 comments on commit 57a60d0

Please sign in to comment.