Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 196632
b: refs/heads/master
c: bfb9126
h: refs/heads/master
v: v3
  • Loading branch information
Anton Blanchard authored and Benjamin Herrenschmidt committed May 6, 2010
1 parent b66415d commit f67f7f6
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 4 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: d5f86fe3457f48f27eecd40c605e7876d026af7c
refs/heads/master: bfb9126defa80cbed6d91ed9685b238b0d7e81c4
9 changes: 6 additions & 3 deletions trunk/arch/powerpc/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -562,19 +562,22 @@ int setup_profiling_timer(unsigned int multiplier)

void __init smp_cpus_done(unsigned int max_cpus)
{
cpumask_t old_mask;
cpumask_var_t old_mask;

/* We want the setup_cpu() here to be called from CPU 0, but our
* init thread may have been "borrowed" by another CPU in the meantime
* se we pin us down to CPU 0 for a short while
*/
old_mask = current->cpus_allowed;
alloc_cpumask_var(&old_mask, GFP_NOWAIT);
cpumask_copy(old_mask, &current->cpus_allowed);
set_cpus_allowed_ptr(current, cpumask_of(boot_cpuid));

if (smp_ops && smp_ops->setup_cpu)
smp_ops->setup_cpu(boot_cpuid);

set_cpus_allowed_ptr(current, &old_mask);
set_cpus_allowed_ptr(current, old_mask);

free_cpumask_var(old_mask);

snapshot_timebases();

Expand Down

0 comments on commit f67f7f6

Please sign in to comment.