[PATCH] fix maxcpus=N parsing

From: Hugh Dickins
Date: Mon Aug 27 2007 - 12:54:40 EST


Fix 61ec7567db103d537329b0db9a887db570431ff4: maxcpus=N is now having no
effect on x86_64, and freezing bootup on i386 (because of inconsistency
with the separate maxcpus parsing down in arch/i386, I guess). That's
because early_param parsing is a little different from __setup parsing,
and needs the "=" omitted: then it seems to work as the original commit
intended (no mention of IO-APIC in /proc/interrupts when maxcpus=0).

Signed-off-by: Hugh Dickins <hugh@xxxxxxxxxxx>
---
Sorry, I noticed this back in -mm, but got diverted by deeper mysteries.
Cc'ed Rusty: I presume there's a good reason why early_param parsing is
confusingly different, but he may know better and want to change it.

It's odd that i386 treats maxcpus=N differently from other architectures:
on i386 it limits cpu_possible_map, on others it just limits what boots
(then powersaved is liable to bring up the others on x86_64 - hmmm).

--- 2.6.23-rc3-git10/init/main.c 2007-08-26 18:10:20.000000000 +0100
+++ linux/init/main.c 2007-08-26 18:59:16.000000000 +0100
@@ -168,7 +168,7 @@ static int __init maxcpus(char *str)
return 0;
}

-early_param("maxcpus=", maxcpus);
+early_param("maxcpus", maxcpus);
#else
#define max_cpus NR_CPUS
#endif
-
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/