Re: + i386-time-avoid-pit-smp-lockups.patch added to -mm tree

From: Nick Piggin
Date: Thu Oct 19 2006 - 10:23:10 EST


Daniel Walker wrote:
On Thu, 2006-10-19 at 15:47 +0200, Andi Kleen wrote:

On Thursday 19 October 2006 15:44, Daniel Walker wrote:

On Wed, 2006-10-11 at 14:26 -0700, akpm@xxxxxxxx wrote:


diff -puN arch/i386/kernel/i8253.c~i386-time-avoid-pit-smp-lockups arch/i386/kernel/i8253.c
--- a/arch/i386/kernel/i8253.c~i386-time-avoid-pit-smp-lockups
+++ a/arch/i386/kernel/i8253.c
@@ -109,7 +109,7 @@ static struct clocksource clocksource_pi

static int __init init_pit_clocksource(void)
{
- if (num_possible_cpus() > 4) /* PIT does not scale! */
+ if (num_possible_cpus() > 1) /* PIT does not scale! */
return 0;


Can we ifdef some code here on CONFIG_SMP . It bugs me that there just
dead code laying around on smp systems.

The optimizer should optimize it all out since num_possible_cpus() is a 0
constant on UP.


You just mean the if statement above though? I was talking more about
the structure above this called "clocksource_pit" which isn't used on
SMP systems due to this code addition. AFAIK init_pit_clocksource()
could disappear along with the clocksource structure ..

An SMP kernel can boot on UP hardware, in which case I think
num_possible_cpus() will be 1, won't it?

--
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/