diff options
| author | Steve French <sfrench@us.ibm.com> | 2005-11-19 21:05:42 -0800 |
|---|---|---|
| committer | Steve French <sfrench@us.ibm.com> | 2005-11-19 21:05:42 -0800 |
| commit | 1e6b39fbb61800e3ecee58dc8c4bca57c89365cd (patch) | |
| tree | 513ce034cff05371496713b8327f9dc074bdcc6d /arch/powerpc/platforms/powermac/smp.c | |
| parent | cdbce9c87e4ebd186389919b95e49592ec35dae6 (diff) | |
| parent | 3bedff1d73b86e0cf52634efb447e9ada08f2cc6 (diff) | |
Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Diffstat (limited to 'arch/powerpc/platforms/powermac/smp.c')
| -rw-r--r-- | arch/powerpc/platforms/powermac/smp.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/powerpc/platforms/powermac/smp.c b/arch/powerpc/platforms/powermac/smp.c index 957b0910342..fb2a7c798e8 100644 --- a/arch/powerpc/platforms/powermac/smp.c +++ b/arch/powerpc/platforms/powermac/smp.c @@ -34,6 +34,7 @@ #include <linux/errno.h> #include <linux/hardirq.h> #include <linux/cpu.h> +#include <linux/compiler.h> #include <asm/ptrace.h> #include <asm/atomic.h> @@ -631,8 +632,9 @@ void smp_core99_give_timebase(void) mb(); /* wait for the secondary to have taken it */ - for (t = 100000; t > 0 && sec_tb_reset; --t) - udelay(10); + /* note: can't use udelay here, since it needs the timebase running */ + for (t = 10000000; t > 0 && sec_tb_reset; --t) + barrier(); if (sec_tb_reset) /* XXX BUG_ON here? */ printk(KERN_WARNING "Timeout waiting sync(2) on second CPU\n"); |
