* [PATCH] x86: allow 8 more cpus could be used
@ 2009-01-29 22:18 Yinghai Lu
2009-01-29 22:19 ` [PATCH] x86: don't treat bigsmp as no standard Yinghai Lu
2009-01-29 22:42 ` [PATCH] x86: allow 8 more cpus could be used Ingo Molnar
0 siblings, 2 replies; 15+ messages in thread
From: Yinghai Lu @ 2009-01-29 22:18 UTC (permalink / raw)
To: Ingo Molnar, Thomas Gleixner, H. Peter Anvin, Andrew Morton
Cc: linux-kernel@vger.kernel.org
Impact: fix left out MARCO
X86_PC will be always enabled. so need to check if we have bigsmp support built
in before cut off more than 8 cpus.
otherwise only get 8 cpus.
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
---
arch/x86/kernel/smpboot.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: linux-2.6/arch/x86/kernel/smpboot.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/smpboot.c
+++ linux-2.6/arch/x86/kernel/smpboot.c
@@ -1000,7 +1000,7 @@ static int __init smp_sanity_check(unsig
{
preempt_disable();
-#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
+#if defined(CONFIG_X86_PC) && !defined(CONFIG_X86_BIGSMP)
if (def_to_bigsmp && nr_cpu_ids > 8) {
unsigned int cpu;
unsigned nr;
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH] x86: don't treat bigsmp as no standard.
2009-01-29 22:18 [PATCH] x86: allow 8 more cpus could be used Yinghai Lu
@ 2009-01-29 22:19 ` Yinghai Lu
2009-01-30 14:25 ` Ingo Molnar
2009-01-29 22:42 ` [PATCH] x86: allow 8 more cpus could be used Ingo Molnar
1 sibling, 1 reply; 15+ messages in thread
From: Yinghai Lu @ 2009-01-29 22:19 UTC (permalink / raw)
To: Ingo Molnar, Thomas Gleixner, H. Peter Anvin, Andrew Morton
Cc: linux-kernel@vger.kernel.org
Impact: auto switch if bigsmp is build it
just like 64 bit switch from logic flat to physflat mode automatically
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
---
arch/x86/Kconfig | 15 +++++++--------
arch/x86/kernel/acpi/boot.c | 2 +-
arch/x86/kernel/mpparse.c | 4 ++--
arch/x86/kernel/setup.c | 2 +-
arch/x86/kernel/smpboot.c | 2 +-
5 files changed, 12 insertions(+), 13 deletions(-)
Index: linux-2.6/arch/x86/Kconfig
===================================================================
--- linux-2.6.orig/arch/x86/Kconfig
+++ linux-2.6/arch/x86/Kconfig
@@ -265,6 +265,12 @@ config X86_MPPARSE
config X86_PC
def_bool y
+config X86_BIGSMP
+ bool "Support for big SMP systems with more than 8 CPUs"
+ depends on X86_32 && SMP
+ help
+ This option is needed for the systems that have more than 8 CPUs
+
config X86_NON_STANDARD
bool "Support for non-standard x86 platforms"
help
@@ -341,13 +347,6 @@ config X86_32_NON_STANDARD
if you select them all, kernel will probe it one by one. and will
fallback to default.
-config X86_BIGSMP
- bool "Support for big SMP systems with more than 8 CPUs"
- depends on X86_32_NON_STANDARD
- help
- This option is needed for the systems that have more than 8 CPUs
- and if the system is not of any sub-arch type above.
-
config X86_NUMAQ
bool "NUMAQ (IBM/Sequent)"
depends on X86_32_NON_STANDARD
@@ -369,7 +368,7 @@ config X86_SUMMIT
config X86_ES7000
bool "Support for Unisys ES7000 IA32 series"
- depends on X86_32_NON_STANDARD
+ depends on X86_32_NON_STANDARD && X86_BIGSMP
help
Support for Unisys ES7000 systems. Say 'Y' here if this kernel is
supposed to run on an IA32-based Unisys ES7000 system.
Index: linux-2.6/arch/x86/kernel/acpi/boot.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/acpi/boot.c
+++ linux-2.6/arch/x86/kernel/acpi/boot.c
@@ -1318,7 +1318,7 @@ static void __init acpi_process_madt(voi
if (!error) {
acpi_lapic = 1;
-#ifdef CONFIG_X86_32_NON_STANDARD
+#ifdef CONFIG_X86_BIGSMP
generic_bigsmp_probe();
#endif
/*
Index: linux-2.6/arch/x86/kernel/mpparse.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/mpparse.c
+++ linux-2.6/arch/x86/kernel/mpparse.c
@@ -372,8 +372,8 @@ static int __init smp_read_mpc(struct mp
(*x86_quirks->mpc_record)++;
}
-#ifdef CONFIG_X86_32_NON_STANDARD
- generic_bigsmp_probe();
+#ifdef CONFIG_X86_BIGSMP
+ generic_bigsmp_probe();
#endif
if (apic->setup_apic_routing)
Index: linux-2.6/arch/x86/kernel/setup.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/setup.c
+++ linux-2.6/arch/x86/kernel/setup.c
@@ -936,7 +936,7 @@ void __init setup_arch(char **cmdline_p)
map_vsyscall();
#endif
-#ifdef CONFIG_X86_32_NON_STANDARD
+#if defined(CONFIG_X86_32_NON_STANDARD) || defined(CONFIG_X86_BIGSMP)
generic_apic_probe();
#endif
Index: linux-2.6/arch/x86/kernel/smpboot.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/smpboot.c
+++ linux-2.6/arch/x86/kernel/smpboot.c
@@ -1007,7 +1007,7 @@ static int __init smp_sanity_check(unsig
printk(KERN_WARNING
"More than 8 CPUs detected - skipping them.\n"
- "Use CONFIG_X86_32_NON_STANDARD and CONFIG_X86_BIGSMP.\n");
+ "Use CONFIG_X86_BIGSMP.\n");
nr = 0;
for_each_present_cpu(cpu) {
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] x86: allow 8 more cpus could be used
2009-01-29 22:18 [PATCH] x86: allow 8 more cpus could be used Yinghai Lu
2009-01-29 22:19 ` [PATCH] x86: don't treat bigsmp as no standard Yinghai Lu
@ 2009-01-29 22:42 ` Ingo Molnar
2009-01-29 22:44 ` Yinghai Lu
2009-01-29 22:44 ` Randy Dunlap
1 sibling, 2 replies; 15+ messages in thread
From: Ingo Molnar @ 2009-01-29 22:42 UTC (permalink / raw)
To: Yinghai Lu
Cc: Thomas Gleixner, H. Peter Anvin, Andrew Morton,
linux-kernel@vger.kernel.org
* Yinghai Lu <yinghai@kernel.org> wrote:
> Impact: fix left out MARCO
>
> X86_PC will be always enabled. so need to check if we have bigsmp
> support built in before cut off more than 8 cpus.
ah, that's a leftover reference to X86_PC. It can now be removed, together
with the Kconfig X86_PC option.
> -#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
> +#if defined(CONFIG_X86_PC) && !defined(CONFIG_X86_BIGSMP)
> if (def_to_bigsmp && nr_cpu_ids > 8) {
> unsigned int cpu;
> unsigned nr;
Could you please send a patch that removes both X86_PC and X86_BIGSMP -
and removes the above cutoff code too, so that it will be built-in all the
time?
Ingo
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] x86: allow 8 more cpus could be used
2009-01-29 22:42 ` [PATCH] x86: allow 8 more cpus could be used Ingo Molnar
@ 2009-01-29 22:44 ` Yinghai Lu
2009-01-29 23:08 ` Ingo Molnar
2009-01-29 22:44 ` Randy Dunlap
1 sibling, 1 reply; 15+ messages in thread
From: Yinghai Lu @ 2009-01-29 22:44 UTC (permalink / raw)
To: Ingo Molnar
Cc: Thomas Gleixner, H. Peter Anvin, Andrew Morton,
linux-kernel@vger.kernel.org
Ingo Molnar wrote:
> * Yinghai Lu <yinghai@kernel.org> wrote:
>
>> Impact: fix left out MARCO
>>
>> X86_PC will be always enabled. so need to check if we have bigsmp
>> support built in before cut off more than 8 cpus.
>
> ah, that's a leftover reference to X86_PC. It can now be removed, together
> with the Kconfig X86_PC option.
>
>> -#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
>> +#if defined(CONFIG_X86_PC) && !defined(CONFIG_X86_BIGSMP)
>> if (def_to_bigsmp && nr_cpu_ids > 8) {
>> unsigned int cpu;
>> unsigned nr;
>
> Could you please send a patch that removes both X86_PC and X86_BIGSMP -
> and removes the above cutoff code too, so that it will be built-in all the
> time?
sure. maybe we could keep X86_BIGSMP for a while. So someone don't enable BIGSMP for small system?
YH
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] x86: allow 8 more cpus could be used
2009-01-29 22:42 ` [PATCH] x86: allow 8 more cpus could be used Ingo Molnar
2009-01-29 22:44 ` Yinghai Lu
@ 2009-01-29 22:44 ` Randy Dunlap
2009-01-29 23:12 ` Ingo Molnar
1 sibling, 1 reply; 15+ messages in thread
From: Randy Dunlap @ 2009-01-29 22:44 UTC (permalink / raw)
To: Ingo Molnar
Cc: Yinghai Lu, Thomas Gleixner, H. Peter Anvin, Andrew Morton,
linux-kernel@vger.kernel.org
Ingo Molnar wrote:
> * Yinghai Lu <yinghai@kernel.org> wrote:
>
>> Impact: fix left out MARCO
>>
>> X86_PC will be always enabled. so need to check if we have bigsmp
>> support built in before cut off more than 8 cpus.
>
> ah, that's a leftover reference to X86_PC. It can now be removed, together
> with the Kconfig X86_PC option.
>
>> -#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
>> +#if defined(CONFIG_X86_PC) && !defined(CONFIG_X86_BIGSMP)
>> if (def_to_bigsmp && nr_cpu_ids > 8) {
>> unsigned int cpu;
>> unsigned nr;
>
> Could you please send a patch that removes both X86_PC and X86_BIGSMP -
> and removes the above cutoff code too, so that it will be built-in all the
> time?
and at what cost, please?
--
~Randy
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] x86: allow 8 more cpus could be used
2009-01-29 22:44 ` Yinghai Lu
@ 2009-01-29 23:08 ` Ingo Molnar
2009-01-29 23:14 ` Yinghai Lu
0 siblings, 1 reply; 15+ messages in thread
From: Ingo Molnar @ 2009-01-29 23:08 UTC (permalink / raw)
To: Yinghai Lu
Cc: Thomas Gleixner, H. Peter Anvin, Andrew Morton,
linux-kernel@vger.kernel.org
* Yinghai Lu <yinghai@kernel.org> wrote:
> Ingo Molnar wrote:
> > * Yinghai Lu <yinghai@kernel.org> wrote:
> >
> >> Impact: fix left out MARCO
> >>
> >> X86_PC will be always enabled. so need to check if we have bigsmp
> >> support built in before cut off more than 8 cpus.
> >
> > ah, that's a leftover reference to X86_PC. It can now be removed, together
> > with the Kconfig X86_PC option.
> >
> >> -#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
> >> +#if defined(CONFIG_X86_PC) && !defined(CONFIG_X86_BIGSMP)
> >> if (def_to_bigsmp && nr_cpu_ids > 8) {
> >> unsigned int cpu;
> >> unsigned nr;
> >
> > Could you please send a patch that removes both X86_PC and X86_BIGSMP -
> > and removes the above cutoff code too, so that it will be built-in all the
> > time?
>
> sure. maybe we could keep X86_BIGSMP for a while. So someone don't
> enable BIGSMP for small system?
yeah, we can certainly keep it - the code to conditionalize it is there
and isnt causing problems really.
Ingo
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] x86: allow 8 more cpus could be used
2009-01-29 22:44 ` Randy Dunlap
@ 2009-01-29 23:12 ` Ingo Molnar
2009-01-29 23:14 ` Randy Dunlap
0 siblings, 1 reply; 15+ messages in thread
From: Ingo Molnar @ 2009-01-29 23:12 UTC (permalink / raw)
To: Randy Dunlap
Cc: Yinghai Lu, Thomas Gleixner, H. Peter Anvin, Andrew Morton,
linux-kernel@vger.kernel.org
* Randy Dunlap <randy.dunlap@oracle.com> wrote:
> Ingo Molnar wrote:
> > * Yinghai Lu <yinghai@kernel.org> wrote:
> >
> >> Impact: fix left out MARCO
> >>
> >> X86_PC will be always enabled. so need to check if we have bigsmp
> >> support built in before cut off more than 8 cpus.
> >
> > ah, that's a leftover reference to X86_PC. It can now be removed, together
> > with the Kconfig X86_PC option.
> >
> >> -#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
> >> +#if defined(CONFIG_X86_PC) && !defined(CONFIG_X86_BIGSMP)
> >> if (def_to_bigsmp && nr_cpu_ids > 8) {
> >> unsigned int cpu;
> >> unsigned nr;
> >
> > Could you please send a patch that removes both X86_PC and X86_BIGSMP -
> > and removes the above cutoff code too, so that it will be built-in all the
> > time?
>
> and at what cost, please?
the size difference between a bigsmp and a normal-smp x86 defconfig kernel
is 0.011%. Zero difference on a UP kernel. (And UP is what most of the
ultra-embedded systems are using)
Ingo
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] x86: allow 8 more cpus could be used
2009-01-29 23:08 ` Ingo Molnar
@ 2009-01-29 23:14 ` Yinghai Lu
2009-01-29 23:20 ` Ingo Molnar
0 siblings, 1 reply; 15+ messages in thread
From: Yinghai Lu @ 2009-01-29 23:14 UTC (permalink / raw)
To: Ingo Molnar
Cc: Thomas Gleixner, H. Peter Anvin, Andrew Morton,
linux-kernel@vger.kernel.org
Ingo Molnar wrote:
> * Yinghai Lu <yinghai@kernel.org> wrote:
>
>> Ingo Molnar wrote:
>>> * Yinghai Lu <yinghai@kernel.org> wrote:
>>>
>>>> Impact: fix left out MARCO
>>>>
>>>> X86_PC will be always enabled. so need to check if we have bigsmp
>>>> support built in before cut off more than 8 cpus.
>>> ah, that's a leftover reference to X86_PC. It can now be removed, together
>>> with the Kconfig X86_PC option.
>>>
>>>> -#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
>>>> +#if defined(CONFIG_X86_PC) && !defined(CONFIG_X86_BIGSMP)
>>>> if (def_to_bigsmp && nr_cpu_ids > 8) {
>>>> unsigned int cpu;
>>>> unsigned nr;
>>> Could you please send a patch that removes both X86_PC and X86_BIGSMP -
>>> and removes the above cutoff code too, so that it will be built-in all the
>>> time?
>> sure. maybe we could keep X86_BIGSMP for a while. So someone don't
>> enable BIGSMP for small system?
>
> yeah, we can certainly keep it - the code to conditionalize it is there
> and isnt causing problems really.
it seems X86_PC will always to 'y'
we may remove it, just use x86 to replace it etc.
[PATCH] x86: remove X86_PC macro
Impact: fix cutoff and remove left over MACRO
X86_PC is default, so don't need it any more.
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 861dcc3..7f81f68 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -262,9 +262,6 @@ config X86_MPPARSE
For old smp systems that do not have proper acpi support. Newer systems
(esp with 64bit cpus) with acpi support, MADT and DSDT will override it
-config X86_PC
- def_bool y
-
config X86_NON_STANDARD
bool "Support for non-standard x86 platforms"
help
@@ -1020,7 +1017,6 @@ config NUMA
bool "Numa Memory Allocation and Scheduler Support"
depends on SMP
depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL)
- default n if X86_PC
default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP)
help
Enable NUMA (Non Uniform Memory Access) support.
@@ -1123,7 +1119,7 @@ config ARCH_SPARSEMEM_DEFAULT
config ARCH_SPARSEMEM_ENABLE
def_bool y
- depends on X86_64 || NUMA || (EXPERIMENTAL && X86_PC) || X86_32_NON_STANDARD
+ depends on X86_64 || NUMA || (EXPERIMENTAL && X86_32) || X86_32_NON_STANDARD
select SPARSEMEM_STATIC if X86_32
select SPARSEMEM_VMEMMAP_ENABLE if X86_64
diff --git a/arch/x86/configs/i386_defconfig b/arch/x86/configs/i386_defconfig
index edba00d..739bce9 100644
--- a/arch/x86/configs/i386_defconfig
+++ b/arch/x86/configs/i386_defconfig
@@ -188,7 +188,6 @@ CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_SMP=y
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y
-CONFIG_X86_PC=y
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_GENERICARCH is not set
diff --git a/arch/x86/configs/x86_64_defconfig b/arch/x86/configs/x86_64_defconfig
index 322dd27..02b514e 100644
--- a/arch/x86/configs/x86_64_defconfig
+++ b/arch/x86/configs/x86_64_defconfig
@@ -187,7 +187,6 @@ CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_SMP=y
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y
-CONFIG_X86_PC=y
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_GENERICARCH is not set
diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c
index fc80bc1..2912fa3 100644
--- a/arch/x86/kernel/smpboot.c
+++ b/arch/x86/kernel/smpboot.c
@@ -1000,7 +1000,7 @@ static int __init smp_sanity_check(unsigned max_cpus)
{
preempt_disable();
-#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
+#ifndef CONFIG_X86_BIGSMP
if (def_to_bigsmp && nr_cpu_ids > 8) {
unsigned int cpu;
unsigned nr;
diff --git a/drivers/eisa/Kconfig b/drivers/eisa/Kconfig
index c064657..2705284 100644
--- a/drivers/eisa/Kconfig
+++ b/drivers/eisa/Kconfig
@@ -3,7 +3,7 @@
#
config EISA_VLB_PRIMING
bool "Vesa Local Bus priming"
- depends on X86_PC && EISA
+ depends on X86 && EISA
default n
---help---
Activate this option if your system contains a Vesa Local
@@ -24,11 +24,11 @@ config EISA_PCI_EISA
When in doubt, say Y.
# Using EISA_VIRTUAL_ROOT on something other than an Alpha or
-# an X86_PC may lead to crashes...
+# an X86 may lead to crashes...
config EISA_VIRTUAL_ROOT
bool "EISA virtual root device"
- depends on EISA && (ALPHA || X86_PC)
+ depends on EISA && (ALPHA || X86)
default y
---help---
Activate this option if your system only have EISA bus
diff --git a/drivers/input/keyboard/Kconfig b/drivers/input/keyboard/Kconfig
index 3556168..ea2638b 100644
--- a/drivers/input/keyboard/Kconfig
+++ b/drivers/input/keyboard/Kconfig
@@ -13,11 +13,11 @@ menuconfig INPUT_KEYBOARD
if INPUT_KEYBOARD
config KEYBOARD_ATKBD
- tristate "AT keyboard" if EMBEDDED || !X86_PC
+ tristate "AT keyboard" if EMBEDDED || !X86
default y
select SERIO
select SERIO_LIBPS2
- select SERIO_I8042 if X86_PC
+ select SERIO_I8042 if X86
select SERIO_GSCPS2 if GSC
help
Say Y here if you want to use a standard AT or PS/2 keyboard. Usually
diff --git a/drivers/input/mouse/Kconfig b/drivers/input/mouse/Kconfig
index 093c8c1..9bef935 100644
--- a/drivers/input/mouse/Kconfig
+++ b/drivers/input/mouse/Kconfig
@@ -17,7 +17,7 @@ config MOUSE_PS2
default y
select SERIO
select SERIO_LIBPS2
- select SERIO_I8042 if X86_PC
+ select SERIO_I8042 if X86
select SERIO_GSCPS2 if GSC
help
Say Y here if you have a PS/2 mouse connected to your system. This
diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
index 9289236..2ff8879 100644
--- a/drivers/mtd/nand/Kconfig
+++ b/drivers/mtd/nand/Kconfig
@@ -273,7 +273,7 @@ config MTD_NAND_CAFE
config MTD_NAND_CS553X
tristate "NAND support for CS5535/CS5536 (AMD Geode companion chip)"
- depends on X86_32 && (X86_PC || X86_32_NON_STANDARD)
+ depends on X86_32
help
The CS553x companion chips for the AMD Geode processor
include NAND flash controllers with built-in hardware ECC
diff --git a/sound/drivers/Kconfig b/sound/drivers/Kconfig
index 99cc41a..491e0d7 100644
--- a/sound/drivers/Kconfig
+++ b/sound/drivers/Kconfig
@@ -33,7 +33,7 @@ if SND_DRIVERS
config SND_PCSP
tristate "PC-Speaker support (READ HELP!)"
- depends on PCSPKR_PLATFORM && X86_PC && HIGH_RES_TIMERS
+ depends on PCSPKR_PLATFORM && X86 && HIGH_RES_TIMERS
depends on INPUT
depends on EXPERIMENTAL
select SND_PCM
^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [PATCH] x86: allow 8 more cpus could be used
2009-01-29 23:12 ` Ingo Molnar
@ 2009-01-29 23:14 ` Randy Dunlap
2009-01-29 23:22 ` Ingo Molnar
0 siblings, 1 reply; 15+ messages in thread
From: Randy Dunlap @ 2009-01-29 23:14 UTC (permalink / raw)
To: Ingo Molnar
Cc: Randy Dunlap, Yinghai Lu, Thomas Gleixner, H. Peter Anvin,
Andrew Morton, linux-kernel@vger.kernel.org
Ingo Molnar wrote:
> * Randy Dunlap <randy.dunlap@oracle.com> wrote:
>
>> Ingo Molnar wrote:
>>> * Yinghai Lu <yinghai@kernel.org> wrote:
>>>
>>>> Impact: fix left out MARCO
>>>>
>>>> X86_PC will be always enabled. so need to check if we have bigsmp
>>>> support built in before cut off more than 8 cpus.
>>> ah, that's a leftover reference to X86_PC. It can now be removed, together
>>> with the Kconfig X86_PC option.
>>>
>>>> -#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
>>>> +#if defined(CONFIG_X86_PC) && !defined(CONFIG_X86_BIGSMP)
>>>> if (def_to_bigsmp && nr_cpu_ids > 8) {
>>>> unsigned int cpu;
>>>> unsigned nr;
>>> Could you please send a patch that removes both X86_PC and X86_BIGSMP -
>>> and removes the above cutoff code too, so that it will be built-in all the
>>> time?
>> and at what cost, please?
>
> the size difference between a bigsmp and a normal-smp x86 defconfig kernel
> is 0.011%. Zero difference on a UP kernel. (And UP is what most of the
> ultra-embedded systems are using)
That's static size? how about cpu and apic table space?
Thanks,
--
~Randy
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] x86: allow 8 more cpus could be used
2009-01-29 23:14 ` Yinghai Lu
@ 2009-01-29 23:20 ` Ingo Molnar
0 siblings, 0 replies; 15+ messages in thread
From: Ingo Molnar @ 2009-01-29 23:20 UTC (permalink / raw)
To: Yinghai Lu
Cc: Thomas Gleixner, H. Peter Anvin, Andrew Morton,
linux-kernel@vger.kernel.org
* Yinghai Lu <yinghai@kernel.org> wrote:
> Ingo Molnar wrote:
> > * Yinghai Lu <yinghai@kernel.org> wrote:
> >
> >> Ingo Molnar wrote:
> >>> * Yinghai Lu <yinghai@kernel.org> wrote:
> >>>
> >>>> Impact: fix left out MARCO
> >>>>
> >>>> X86_PC will be always enabled. so need to check if we have bigsmp
> >>>> support built in before cut off more than 8 cpus.
> >>> ah, that's a leftover reference to X86_PC. It can now be removed, together
> >>> with the Kconfig X86_PC option.
> >>>
> >>>> -#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
> >>>> +#if defined(CONFIG_X86_PC) && !defined(CONFIG_X86_BIGSMP)
> >>>> if (def_to_bigsmp && nr_cpu_ids > 8) {
> >>>> unsigned int cpu;
> >>>> unsigned nr;
> >>> Could you please send a patch that removes both X86_PC and X86_BIGSMP -
> >>> and removes the above cutoff code too, so that it will be built-in all the
> >>> time?
> >> sure. maybe we could keep X86_BIGSMP for a while. So someone don't
> >> enable BIGSMP for small system?
> >
> > yeah, we can certainly keep it - the code to conditionalize it is there
> > and isnt causing problems really.
>
> it seems X86_PC will always to 'y'
>
> we may remove it, just use x86 to replace it etc.
>
> [PATCH] x86: remove X86_PC macro
>
> Impact: fix cutoff and remove left over MACRO
>
> X86_PC is default, so don't need it any more.
>
> Signed-off-by: Yinghai Lu <yinghai@kernel.org>
applied to tip/x86/apic, thanks!
Ingo
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] x86: allow 8 more cpus could be used
2009-01-29 23:14 ` Randy Dunlap
@ 2009-01-29 23:22 ` Ingo Molnar
2009-01-29 23:23 ` Yinghai Lu
2009-01-29 23:25 ` Randy Dunlap
0 siblings, 2 replies; 15+ messages in thread
From: Ingo Molnar @ 2009-01-29 23:22 UTC (permalink / raw)
To: Randy Dunlap
Cc: Yinghai Lu, Thomas Gleixner, H. Peter Anvin, Andrew Morton,
linux-kernel@vger.kernel.org
* Randy Dunlap <randy.dunlap@oracle.com> wrote:
> Ingo Molnar wrote:
> > * Randy Dunlap <randy.dunlap@oracle.com> wrote:
> >
> >> Ingo Molnar wrote:
> >>> * Yinghai Lu <yinghai@kernel.org> wrote:
> >>>
> >>>> Impact: fix left out MARCO
> >>>>
> >>>> X86_PC will be always enabled. so need to check if we have bigsmp
> >>>> support built in before cut off more than 8 cpus.
> >>> ah, that's a leftover reference to X86_PC. It can now be removed, together
> >>> with the Kconfig X86_PC option.
> >>>
> >>>> -#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
> >>>> +#if defined(CONFIG_X86_PC) && !defined(CONFIG_X86_BIGSMP)
> >>>> if (def_to_bigsmp && nr_cpu_ids > 8) {
> >>>> unsigned int cpu;
> >>>> unsigned nr;
> >>> Could you please send a patch that removes both X86_PC and X86_BIGSMP -
> >>> and removes the above cutoff code too, so that it will be built-in all the
> >>> time?
> >> and at what cost, please?
> >
> > the size difference between a bigsmp and a normal-smp x86 defconfig kernel
> > is 0.011%. Zero difference on a UP kernel. (And UP is what most of the
> > ultra-embedded systems are using)
>
> That's static size? how about cpu and apic table space?
What do you mean? What is your point and what is your exact question?
Ingo
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] x86: allow 8 more cpus could be used
2009-01-29 23:22 ` Ingo Molnar
@ 2009-01-29 23:23 ` Yinghai Lu
2009-01-29 23:25 ` Randy Dunlap
1 sibling, 0 replies; 15+ messages in thread
From: Yinghai Lu @ 2009-01-29 23:23 UTC (permalink / raw)
To: Ingo Molnar
Cc: Randy Dunlap, Thomas Gleixner, H. Peter Anvin, Andrew Morton,
linux-kernel@vger.kernel.org
Ingo Molnar wrote:
> * Randy Dunlap <randy.dunlap@oracle.com> wrote:
>
>> Ingo Molnar wrote:
>>> * Randy Dunlap <randy.dunlap@oracle.com> wrote:
>>>
>>>> Ingo Molnar wrote:
>>>>> * Yinghai Lu <yinghai@kernel.org> wrote:
>>>>>
>>>>>> Impact: fix left out MARCO
>>>>>>
>>>>>> X86_PC will be always enabled. so need to check if we have bigsmp
>>>>>> support built in before cut off more than 8 cpus.
>>>>> ah, that's a leftover reference to X86_PC. It can now be removed, together
>>>>> with the Kconfig X86_PC option.
>>>>>
>>>>>> -#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
>>>>>> +#if defined(CONFIG_X86_PC) && !defined(CONFIG_X86_BIGSMP)
>>>>>> if (def_to_bigsmp && nr_cpu_ids > 8) {
>>>>>> unsigned int cpu;
>>>>>> unsigned nr;
>>>>> Could you please send a patch that removes both X86_PC and X86_BIGSMP -
>>>>> and removes the above cutoff code too, so that it will be built-in all the
>>>>> time?
>>>> and at what cost, please?
>>> the size difference between a bigsmp and a normal-smp x86 defconfig kernel
>>> is 0.011%. Zero difference on a UP kernel. (And UP is what most of the
>>> ultra-embedded systems are using)
>> That's static size? how about cpu and apic table space?
>
> What do you mean? What is your point and what is your exact question?
>
it seems he still want to use mach-default direct without apic-> involoved.
YH
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] x86: allow 8 more cpus could be used
2009-01-29 23:22 ` Ingo Molnar
2009-01-29 23:23 ` Yinghai Lu
@ 2009-01-29 23:25 ` Randy Dunlap
2009-01-30 0:09 ` Ingo Molnar
1 sibling, 1 reply; 15+ messages in thread
From: Randy Dunlap @ 2009-01-29 23:25 UTC (permalink / raw)
To: Ingo Molnar
Cc: Yinghai Lu, Thomas Gleixner, H. Peter Anvin, Andrew Morton,
linux-kernel@vger.kernel.org
Ingo Molnar wrote:
> * Randy Dunlap <randy.dunlap@oracle.com> wrote:
>
>> Ingo Molnar wrote:
>>> * Randy Dunlap <randy.dunlap@oracle.com> wrote:
>>>
>>>> Ingo Molnar wrote:
>>>>> * Yinghai Lu <yinghai@kernel.org> wrote:
>>>>>
>>>>>> Impact: fix left out MARCO
>>>>>>
>>>>>> X86_PC will be always enabled. so need to check if we have bigsmp
>>>>>> support built in before cut off more than 8 cpus.
>>>>> ah, that's a leftover reference to X86_PC. It can now be removed, together
>>>>> with the Kconfig X86_PC option.
>>>>>
>>>>>> -#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
>>>>>> +#if defined(CONFIG_X86_PC) && !defined(CONFIG_X86_BIGSMP)
>>>>>> if (def_to_bigsmp && nr_cpu_ids > 8) {
>>>>>> unsigned int cpu;
>>>>>> unsigned nr;
>>>>> Could you please send a patch that removes both X86_PC and X86_BIGSMP -
>>>>> and removes the above cutoff code too, so that it will be built-in all the
>>>>> time?
>>>> and at what cost, please?
>>> the size difference between a bigsmp and a normal-smp x86 defconfig kernel
>>> is 0.011%. Zero difference on a UP kernel. (And UP is what most of the
>>> ultra-embedded systems are using)
>> That's static size? how about cpu and apic table space?
>
> What do you mean? What is your point and what is your exact question?
There used to be large CPU and APIC tables (depending on the MAX
number of these devices that are supported in a kernel). Are those gone?
If not, then I agree with YH and CONFIG_BIGSMP is still needed/wanted
by small systems.
--
~Randy
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] x86: allow 8 more cpus could be used
2009-01-29 23:25 ` Randy Dunlap
@ 2009-01-30 0:09 ` Ingo Molnar
0 siblings, 0 replies; 15+ messages in thread
From: Ingo Molnar @ 2009-01-30 0:09 UTC (permalink / raw)
To: Randy Dunlap
Cc: Yinghai Lu, Thomas Gleixner, H. Peter Anvin, Andrew Morton,
linux-kernel@vger.kernel.org
* Randy Dunlap <randy.dunlap@oracle.com> wrote:
> Ingo Molnar wrote:
> > * Randy Dunlap <randy.dunlap@oracle.com> wrote:
> >
> >> Ingo Molnar wrote:
> >>> * Randy Dunlap <randy.dunlap@oracle.com> wrote:
> >>>
> >>>> Ingo Molnar wrote:
> >>>>> * Yinghai Lu <yinghai@kernel.org> wrote:
> >>>>>
> >>>>>> Impact: fix left out MARCO
> >>>>>>
> >>>>>> X86_PC will be always enabled. so need to check if we have bigsmp
> >>>>>> support built in before cut off more than 8 cpus.
> >>>>> ah, that's a leftover reference to X86_PC. It can now be removed, together
> >>>>> with the Kconfig X86_PC option.
> >>>>>
> >>>>>> -#if defined(CONFIG_X86_PC) && defined(CONFIG_X86_32)
> >>>>>> +#if defined(CONFIG_X86_PC) && !defined(CONFIG_X86_BIGSMP)
> >>>>>> if (def_to_bigsmp && nr_cpu_ids > 8) {
> >>>>>> unsigned int cpu;
> >>>>>> unsigned nr;
> >>>>> Could you please send a patch that removes both X86_PC and X86_BIGSMP -
> >>>>> and removes the above cutoff code too, so that it will be built-in all the
> >>>>> time?
> >>>> and at what cost, please?
> >>> the size difference between a bigsmp and a normal-smp x86 defconfig kernel
> >>> is 0.011%. Zero difference on a UP kernel. (And UP is what most of the
> >>> ultra-embedded systems are using)
> >> That's static size? how about cpu and apic table space?
> >
> > What do you mean? What is your point and what is your exact question?
>
> There used to be large CPU and APIC tables (depending on the MAX number
> of these devices that are supported in a kernel). Are those gone?
ah, ok. No, there's no such dependency on CONFIG_X86_BIGSMP. The total
size difference is around 900 bytes on the defconfig kernel - and that
includes the APIC tables too.
> If not, then I agree with YH and CONFIG_BIGSMP is still needed/wanted by
> small systems.
It's not a size issue - but we can still keep the option.
Ingo
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] x86: don't treat bigsmp as no standard.
2009-01-29 22:19 ` [PATCH] x86: don't treat bigsmp as no standard Yinghai Lu
@ 2009-01-30 14:25 ` Ingo Molnar
0 siblings, 0 replies; 15+ messages in thread
From: Ingo Molnar @ 2009-01-30 14:25 UTC (permalink / raw)
To: Yinghai Lu
Cc: Thomas Gleixner, H. Peter Anvin, Andrew Morton,
linux-kernel@vger.kernel.org
* Yinghai Lu <yinghai@kernel.org> wrote:
>
> Impact: auto switch if bigsmp is build it
>
> just like 64 bit switch from logic flat to physflat mode automatically
>
> Signed-off-by: Yinghai Lu <yinghai@kernel.org>
>
> ---
> arch/x86/Kconfig | 15 +++++++--------
> arch/x86/kernel/acpi/boot.c | 2 +-
> arch/x86/kernel/mpparse.c | 4 ++--
> arch/x86/kernel/setup.c | 2 +-
> arch/x86/kernel/smpboot.c | 2 +-
> 5 files changed, 12 insertions(+), 13 deletions(-)
Good idea - applied to tip/x86/apic, thanks!
Ingo
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2009-01-30 14:25 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-29 22:18 [PATCH] x86: allow 8 more cpus could be used Yinghai Lu
2009-01-29 22:19 ` [PATCH] x86: don't treat bigsmp as no standard Yinghai Lu
2009-01-30 14:25 ` Ingo Molnar
2009-01-29 22:42 ` [PATCH] x86: allow 8 more cpus could be used Ingo Molnar
2009-01-29 22:44 ` Yinghai Lu
2009-01-29 23:08 ` Ingo Molnar
2009-01-29 23:14 ` Yinghai Lu
2009-01-29 23:20 ` Ingo Molnar
2009-01-29 22:44 ` Randy Dunlap
2009-01-29 23:12 ` Ingo Molnar
2009-01-29 23:14 ` Randy Dunlap
2009-01-29 23:22 ` Ingo Molnar
2009-01-29 23:23 ` Yinghai Lu
2009-01-29 23:25 ` Randy Dunlap
2009-01-30 0:09 ` Ingo Molnar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox