lkml.org 
[lkml]   [2004]   [Jul]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] ppc64: Fix cpu_up race
On Thu, Jul 29, 2004 at 03:30:11PM +1000, Anton Blanchard wrote:
>
> > I think Anton pushed this to ameslab. I presume there should be some mechanism
> > for ameslab stuff to be included mainline. If there is such mechanism, then
> > I dont want to push the patch myself.
>
> It looks good, could you send it directly to akpm, ccing me?

Andrew,
Patch below fixes a cpu_up race in PPC64. Please apply.


Signed-off-by : Srivatsa Vaddagiri <vatsa@in.ibm.com>
Signed-off-by : Anton Blanchard <anton@samba.org>


---

linux-2.6.8-rc2-vatsa/arch/ppc64/kernel/smp.c | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletion(-)

diff -puN arch/ppc64/kernel/smp.c~ppc64_cpu_up_fix arch/ppc64/kernel/smp.c
--- linux-2.6.8-rc2/arch/ppc64/kernel/smp.c~ppc64_cpu_up_fix 2004-07-30 10:33:55.000000000 +0530
+++ linux-2.6.8-rc2-vatsa/arch/ppc64/kernel/smp.c 2004-07-30 10:34:02.000000000 +0530
@@ -927,7 +927,11 @@ int __devinit __cpu_up(unsigned int cpu)

if (smp_ops->give_timebase)
smp_ops->give_timebase();
- cpu_set(cpu, cpu_online_map);
+
+ /* Wait until cpu puts itself in the online map */
+ while (!cpu_online(cpu))
+ cpu_relax();
+
return 0;
}

@@ -963,6 +967,10 @@ int __devinit start_secondary(void *unus
#endif
#endif

+ spin_lock(&call_lock);
+ cpu_set(cpu, cpu_online_map);
+ spin_unlock(&call_lock);
+
local_irq_enable();

return cpu_idle(NULL);
_

--


Thanks and Regards,
Srivatsa Vaddagiri,
Linux Technology Center,
IBM Software Labs,
Bangalore, INDIA - 560017
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:04    [W:0.286 / U:0.084 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site