* Re: [Fwd: [PATCH] ppc64: Fix CPU hot unplug deadlock]
[not found] <1082266724.2500.327.camel@gaston>
@ 2004-04-18 16:50 ` Olaf Hering
2004-04-18 22:45 ` Benjamin Herrenschmidt
0 siblings, 1 reply; 2+ messages in thread
From: Olaf Hering @ 2004-04-18 16:50 UTC (permalink / raw)
To: Benjamin Herrenschmidt; +Cc: akpm, linux-kernel
On Sun, Apr 18, Benjamin Herrenschmidt wrote:
> My RTAS locking fixes incorrectly added a spinlock around the function
> used to stop a CPU, that function never returns, thus the lock becomes
> stale. The correct fix is to disable interrupts instead (the RTAS params
> beeing per-CPU, this should be safe enough)
>
> Ben.
>
> diff -urN linux-2.5/arch/ppc64/kernel/rtas.c ppc64-linux-2.5/arch/ppc64/kernel/rtas.c
> --- linux-2.5/arch/ppc64/kernel/rtas.c 2004-04-17 12:39:03.253986984 +1000
> +++ ppc64-linux-2.5/arch/ppc64/kernel/rtas.c 2004-04-18 15:35:41.871029480 +1000
> @@ -504,9 +504,9 @@
> void rtas_stop_self(void)
> {
> struct rtas_args *rtas_args = &(get_paca()->xRtas);
> - unsigned long s;
>
> - spin_lock_irqsave(&rtas.lock, s);
> + local_irq_disable(s);
did that compile ok for you?
--
USB is for mice, FireWire is for men!
sUse lINUX ag, nÜRNBERG
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [Fwd: [PATCH] ppc64: Fix CPU hot unplug deadlock]
2004-04-18 16:50 ` [Fwd: [PATCH] ppc64: Fix CPU hot unplug deadlock] Olaf Hering
@ 2004-04-18 22:45 ` Benjamin Herrenschmidt
0 siblings, 0 replies; 2+ messages in thread
From: Benjamin Herrenschmidt @ 2004-04-18 22:45 UTC (permalink / raw)
To: Olaf Hering; +Cc: Andrew Morton, Linux Kernel list
> >
> > diff -urN linux-2.5/arch/ppc64/kernel/rtas.c ppc64-linux-2.5/arch/ppc64/kernel/rtas.c
> > --- linux-2.5/arch/ppc64/kernel/rtas.c 2004-04-17 12:39:03.253986984 +1000
> > +++ ppc64-linux-2.5/arch/ppc64/kernel/rtas.c 2004-04-18 15:35:41.871029480 +1000
> > @@ -504,9 +504,9 @@
> > void rtas_stop_self(void)
> > {
> > struct rtas_args *rtas_args = &(get_paca()->xRtas);
> > - unsigned long s;
> >
> > - spin_lock_irqsave(&rtas.lock, s);
> > + local_irq_disable(s);
>
> did that compile ok for you
Rah ! I sent the wrong one ! I'm really sick...
New fix on the way
Ben.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2004-04-18 22:52 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1082266724.2500.327.camel@gaston>
2004-04-18 16:50 ` [Fwd: [PATCH] ppc64: Fix CPU hot unplug deadlock] Olaf Hering
2004-04-18 22:45 ` Benjamin Herrenschmidt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox