Some of the Kconfig files (ppc/ppc64) seem to be of the opinion that
there are races when both SMP and PREEMPT are enabled.
Is this still the case, or are they out of date?
Thanks,
Chris
--
Chris Friesen | MailStop: 043/33/F10
Nortel Networks | work: (613) 765-0557
3500 Carling Avenue | fax: (613) 765-2986
Nepean, ON K2H 8E9 Canada | email: [email protected]
On Wed, 2004-03-17 at 16:30, Chris Friesen wrote:
> Some of the Kconfig files (ppc/ppc64) seem to be of the opinion that
> there are races when both SMP and PREEMPT are enabled.
>
> Is this still the case, or are they out of date?
Hrm, I thought I sent Anton a patch to fix that.
The comment is out of date. Technically speaking, the potential
SMP+PREEMPT races exist on UP+PREEMPT, too.
Running SMP+PREEMPT on a 4-way here :-)
Robert Love
> Hrm, I thought I sent Anton a patch to fix that.
Sorry, I had planned to send it once Linus got over his deep freeze mode
but forgot. Here it is.
Now that the option is selectable I marked it BROKEN for the moment
since we havent got around to doing the low level exception bits yet...
Do you have a G5 yet? :)
> The comment is out of date. Technically speaking, the potential
> SMP+PREEMPT races exist on UP+PREEMPT, too.
>
> Running SMP+PREEMPT on a 4-way here :-)
--
From: Robert Love <[email protected]>
arch/ppc64/Kconfig's entry for CONFIG_PREEMPT is missing the description
after the "bool" statement, so the entry does not show up.
Also, the help description mentions a restriction that is not [any
longer] true.
===== arch/ppc64/Kconfig 1.50 vs edited =====
--- 1.50/arch/ppc64/Kconfig Sun Mar 7 18:05:28 2004
+++ edited/arch/ppc64/Kconfig Thu Mar 18 10:33:17 2004
@@ -174,14 +179,12 @@
depends on DISCONTIGMEM
config PREEMPT
- bool
+ bool "Preemptible Kernel"
+ depends on BROKEN
help
This option reduces the latency of the kernel when reacting to
real-time or interactive events by allowing a low priority process to
be preempted even if it is in kernel mode executing a system call.
- Unfortunately the kernel code has some race conditions if both
- CONFIG_SMP and CONFIG_PREEMPT are enabled, so this option is
- currently disabled if you are building an SMP kernel.
Say Y here if you are building a kernel for a desktop, embedded
or real-time system. Say N if you are unsure.
On Wed, 2004-03-17 at 18:36, Anton Blanchard wrote:
> Sorry, I had planned to send it once Linus got over his deep freeze mode
> but forgot. Here it is.
Thanks.
> Now that the option is selectable I marked it BROKEN for the moment
> since we havent got around to doing the low level exception bits yet...
> Do you have a G5 yet? :)
Unfortunately, no. ;-)
I think the low-level bits are there for PPC32, right? So just PPC64 is
missing the kernel entry/exit and interrupt changes?
Robert Love