* Re: linux-2.6.17.1: undefined reference to `online_page' @ 2006-06-25 21:01 Chuck Ebbert 2006-06-25 21:23 ` Randy.Dunlap 2006-06-26 7:39 ` Yasunori Goto 0 siblings, 2 replies; 11+ messages in thread From: Chuck Ebbert @ 2006-06-25 21:01 UTC (permalink / raw) To: Toralf Foerster; +Cc: linux-kernel, Dave Hansen, Yasunori Goto In-Reply-To: <200606231001.33766.toralf.foerster@gmx.de> On Fri, 23 Jun 2006 10:01:33 +0200, Toralf Foerster wrote: > I got the compile error : > > ... > UPD include/linux/compile.h > CC init/version.o > LD init/built-in.o > LD .tmp_vmlinux1 > mm/built-in.o: In function `online_pages': > : undefined reference to `online_page' > make: *** [.tmp_vmlinux1] Error 1 > > with this config: > CONFIG_X86_32=y > CONFIG_NOHIGHMEM=y > CONFIG_SPARSEMEM_MANUAL=y > CONFIG_SPARSEMEM=y > CONFIG_HAVE_MEMORY_PRESENT=y > CONFIG_SPARSEMEM_STATIC=y > CONFIG_MEMORY_HOTPLUG=y Yes, that config is broken. mm/memory_hotplug.c::online_pages() calls online_page() but without HIGHMEM that doesn't get built and no dummy function gets defined. -- Chuck "You can't read a newspaper if you can't read." --George W. Bush ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: linux-2.6.17.1: undefined reference to `online_page' 2006-06-25 21:01 linux-2.6.17.1: undefined reference to `online_page' Chuck Ebbert @ 2006-06-25 21:23 ` Randy.Dunlap 2006-06-26 7:39 ` Yasunori Goto 1 sibling, 0 replies; 11+ messages in thread From: Randy.Dunlap @ 2006-06-25 21:23 UTC (permalink / raw) To: Chuck Ebbert; +Cc: toralf.foerster, linux-kernel, haveblue, y-goto On Sun, 25 Jun 2006 17:01:22 -0400 Chuck Ebbert wrote: > In-Reply-To: <200606231001.33766.toralf.foerster@gmx.de> > > On Fri, 23 Jun 2006 10:01:33 +0200, Toralf Foerster wrote: > > > I got the compile error : > > > > ... > > UPD include/linux/compile.h > > CC init/version.o > > LD init/built-in.o > > LD .tmp_vmlinux1 > > mm/built-in.o: In function `online_pages': > > : undefined reference to `online_page' > > make: *** [.tmp_vmlinux1] Error 1 > > > > with this config: > > > CONFIG_X86_32=y > > > CONFIG_NOHIGHMEM=y > > > CONFIG_SPARSEMEM_MANUAL=y > > CONFIG_SPARSEMEM=y > > CONFIG_HAVE_MEMORY_PRESENT=y > > CONFIG_SPARSEMEM_STATIC=y > > CONFIG_MEMORY_HOTPLUG=y > > Yes, that config is broken. mm/memory_hotplug.c::online_pages() calls > online_page() but without HIGHMEM that doesn't get built and no dummy > function gets defined. Toralf, was this from a random config file? (make randconfig) It's certainly not just a 2.6.17.1 problem. .1 didn't change this. --- ~Randy ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: linux-2.6.17.1: undefined reference to `online_page' 2006-06-25 21:01 linux-2.6.17.1: undefined reference to `online_page' Chuck Ebbert 2006-06-25 21:23 ` Randy.Dunlap @ 2006-06-26 7:39 ` Yasunori Goto 2006-06-26 17:46 ` Dave Hansen 1 sibling, 1 reply; 11+ messages in thread From: Yasunori Goto @ 2006-06-26 7:39 UTC (permalink / raw) To: Toralf Foerster; +Cc: linux-kernel, Dave Hansen, Chuck Ebbert, Randy.Dunlap > In-Reply-To: <200606231001.33766.toralf.foerster@gmx.de> > > On Fri, 23 Jun 2006 10:01:33 +0200, Toralf Foerster wrote: > > > I got the compile error : > > > > ... > > UPD include/linux/compile.h > > CC init/version.o > > LD init/built-in.o > > LD .tmp_vmlinux1 > > mm/built-in.o: In function `online_pages': > > : undefined reference to `online_page' > > make: *** [.tmp_vmlinux1] Error 1 > > > > with this config: > > > CONFIG_X86_32=y > > > CONFIG_NOHIGHMEM=y > > > CONFIG_SPARSEMEM_MANUAL=y > > CONFIG_SPARSEMEM=y > > CONFIG_HAVE_MEMORY_PRESENT=y > > CONFIG_SPARSEMEM_STATIC=y > > CONFIG_MEMORY_HOTPLUG=y > > Yes, that config is broken. mm/memory_hotplug.c::online_pages() calls > online_page() but without HIGHMEM that doesn't get built and no dummy > function gets defined. Toralf-san. How is this patch? Or do you want to use memory hotplug without highmem? Bye. --- add_memory() for i386 add memory to highmem. So, if CONFIG_HIGHMEM is not set, CONFIG_MEMORY_HOTPLUG shouldn't be set. Signed-off-by: Yasunori Goto <y-goto@jp.fujitsu.com> --- mm/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: linux-2.6.17/mm/Kconfig =================================================================== --- linux-2.6.17.orig/mm/Kconfig 2006-06-26 14:19:11.000000000 +0900 +++ linux-2.6.17/mm/Kconfig 2006-06-26 14:19:53.000000000 +0900 @@ -115,7 +115,7 @@ config SPARSEMEM_EXTREME # eventually, we can have this option just 'select SPARSEMEM' config MEMORY_HOTPLUG bool "Allow for memory hot-add" - depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND + depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND && !(X86_32 && !HIGHMEM) comment "Memory hotplug is currently incompatible with Software Suspend" depends on SPARSEMEM && HOTPLUG && SOFTWARE_SUSPEND -- Yasunori Goto ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: linux-2.6.17.1: undefined reference to `online_page' 2006-06-26 7:39 ` Yasunori Goto @ 2006-06-26 17:46 ` Dave Hansen 2006-06-27 11:55 ` Yasunori Goto 2006-06-27 12:10 ` Andy Whitcroft 0 siblings, 2 replies; 11+ messages in thread From: Dave Hansen @ 2006-06-26 17:46 UTC (permalink / raw) To: Yasunori Goto Cc: Toralf Foerster, linux-kernel, Chuck Ebbert, Randy.Dunlap, Andy Whitcroft On Mon, 2006-06-26 at 16:39 +0900, Yasunori Goto wrote: > > =================================================================== > --- linux-2.6.17.orig/mm/Kconfig 2006-06-26 14:19:11.000000000 > +0900 > +++ linux-2.6.17/mm/Kconfig 2006-06-26 14:19:53.000000000 +0900 > @@ -115,7 +115,7 @@ config SPARSEMEM_EXTREME > # eventually, we can have this option just 'select SPARSEMEM' > config MEMORY_HOTPLUG > bool "Allow for memory hot-add" > - depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND > + depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND > && !(X86_32 && !HIGHMEM) > > comment "Memory hotplug is currently incompatible with Software > Suspend" > depends on SPARSEMEM && HOTPLUG && SOFTWARE_SUSPEND I think it makes a lot more sense to just disable sparsemem when ! HIGHMEM. Plus, we can do all of that in the arch-specific Kconfigs and not litter the generic ones with this stuff. -- Dave ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: linux-2.6.17.1: undefined reference to `online_page' 2006-06-26 17:46 ` Dave Hansen @ 2006-06-27 11:55 ` Yasunori Goto 2006-06-27 12:10 ` Andy Whitcroft 1 sibling, 0 replies; 11+ messages in thread From: Yasunori Goto @ 2006-06-27 11:55 UTC (permalink / raw) To: Dave Hansen Cc: Toralf Foerster, linux-kernel, Chuck Ebbert, Randy.Dunlap, Andy Whitcroft > On Mon, 2006-06-26 at 16:39 +0900, Yasunori Goto wrote: > > > > =================================================================== > > --- linux-2.6.17.orig/mm/Kconfig 2006-06-26 14:19:11.000000000 > > +0900 > > +++ linux-2.6.17/mm/Kconfig 2006-06-26 14:19:53.000000000 +0900 > > @@ -115,7 +115,7 @@ config SPARSEMEM_EXTREME > > # eventually, we can have this option just 'select SPARSEMEM' > > config MEMORY_HOTPLUG > > bool "Allow for memory hot-add" > > - depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND > > + depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND > > && !(X86_32 && !HIGHMEM) > > > > comment "Memory hotplug is currently incompatible with Software > > Suspend" > > depends on SPARSEMEM && HOTPLUG && SOFTWARE_SUSPEND > > I think it makes a lot more sense to just disable sparsemem when ! > HIGHMEM. Plus, we can do all of that in the arch-specific Kconfigs and > not litter the generic ones with this stuff. Ah, Ok. I changed this patch as you said. At first, I thought it might not be good that config memory hotplug was disabled by config sparsemem. Because, they are not strictly the same. But, this is reasonable way for 2.6.17.x. It is less impact, anyway. Thanks. ------ Memory hotplug code of i386 adds memory to only highmem. So, if CONFIG_HIGHMEM is not set, CONFIG_MEMORY_HOTPLUG shouldn't be set. Otherwise, it causes compile error. But, CONFIG_MEMORY_HOTPLUG is defined mm/Kconfig. So, if it is disabled on its file when arch is i386 and highmem is not set, it may be a bit intrusive. When CONFIG_SPARSEMEM is not set, its config option is not set too. CONFIG_ARCH_SPARSEMEM_ENABLE is defined in arch/i386/Kconfig. Disabling it is not intrusive for other archtecture. This is patch for it. Signed-off-by: Yasunori Goto <y-goto@jp.fujitsu.com> --- arch/i386/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: linux-2.6.17/arch/i386/Kconfig =================================================================== --- linux-2.6.17.orig/arch/i386/Kconfig 2006-06-27 19:33:39.000000000 +0900 +++ linux-2.6.17/arch/i386/Kconfig 2006-06-27 19:38:53.000000000 +0900 @@ -562,7 +562,7 @@ config ARCH_DISCONTIGMEM_DEFAULT config ARCH_SPARSEMEM_ENABLE def_bool y - depends on (NUMA || (X86_PC && EXPERIMENTAL)) + depends on (NUMA || (X86_PC && EXPERIMENTAL)) && HIGHMEM select SPARSEMEM_STATIC config ARCH_SELECT_MEMORY_MODEL -- Yasunori Goto ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: linux-2.6.17.1: undefined reference to `online_page' 2006-06-26 17:46 ` Dave Hansen 2006-06-27 11:55 ` Yasunori Goto @ 2006-06-27 12:10 ` Andy Whitcroft 2006-06-28 2:27 ` Yasunori Goto 1 sibling, 1 reply; 11+ messages in thread From: Andy Whitcroft @ 2006-06-27 12:10 UTC (permalink / raw) To: Dave Hansen Cc: Yasunori Goto, Toralf Foerster, linux-kernel, Chuck Ebbert, Randy.Dunlap Dave Hansen wrote: > On Mon, 2006-06-26 at 16:39 +0900, Yasunori Goto wrote: > >>=================================================================== >>--- linux-2.6.17.orig/mm/Kconfig 2006-06-26 14:19:11.000000000 >>+0900 >>+++ linux-2.6.17/mm/Kconfig 2006-06-26 14:19:53.000000000 +0900 >>@@ -115,7 +115,7 @@ config SPARSEMEM_EXTREME >> # eventually, we can have this option just 'select SPARSEMEM' >> config MEMORY_HOTPLUG >> bool "Allow for memory hot-add" >>- depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND >>+ depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND >>&& !(X86_32 && !HIGHMEM) >> >> comment "Memory hotplug is currently incompatible with Software >>Suspend" >> depends on SPARSEMEM && HOTPLUG && SOFTWARE_SUSPEND > > > I think it makes a lot more sense to just disable sparsemem when ! > HIGHMEM. Plus, we can do all of that in the arch-specific Kconfigs and > not litter the generic ones with this stuff. SPARSEMEM cirtainly isn't going to offer you anything much with this little memory. If you were going to do this I'd say it makes more sense to introduce an ARCH_DISABLE_MEMORY_HOTPLUG sort of thing and add that in the x86 Kconfig. -apw ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: linux-2.6.17.1: undefined reference to `online_page' 2006-06-27 12:10 ` Andy Whitcroft @ 2006-06-28 2:27 ` Yasunori Goto 2006-06-29 3:21 ` [PATCH] solve config broken: " Yasunori Goto 0 siblings, 1 reply; 11+ messages in thread From: Yasunori Goto @ 2006-06-28 2:27 UTC (permalink / raw) To: Andy Whitcroft Cc: Dave Hansen, Toralf Foerster, linux-kernel, Chuck Ebbert, Randy.Dunlap > Dave Hansen wrote: > > On Mon, 2006-06-26 at 16:39 +0900, Yasunori Goto wrote: > > > >>=================================================================== > >>--- linux-2.6.17.orig/mm/Kconfig 2006-06-26 14:19:11.000000000 > >>+0900 > >>+++ linux-2.6.17/mm/Kconfig 2006-06-26 14:19:53.000000000 +0900 > >>@@ -115,7 +115,7 @@ config SPARSEMEM_EXTREME > >> # eventually, we can have this option just 'select SPARSEMEM' > >> config MEMORY_HOTPLUG > >> bool "Allow for memory hot-add" > >>- depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND > >>+ depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND > >>&& !(X86_32 && !HIGHMEM) > >> > >> comment "Memory hotplug is currently incompatible with Software > >>Suspend" > >> depends on SPARSEMEM && HOTPLUG && SOFTWARE_SUSPEND > > > > > > I think it makes a lot more sense to just disable sparsemem when ! > > HIGHMEM. Plus, we can do all of that in the arch-specific Kconfigs and > > not litter the generic ones with this stuff. > > SPARSEMEM cirtainly isn't going to offer you anything much with this > little memory. If you were going to do this I'd say it makes more sense > to introduce an ARCH_DISABLE_MEMORY_HOTPLUG sort of thing and add that > in the x86 Kconfig. Then, I think ARCH_ENABLE_MEMORY_HOTPLUG is a bit better than it. Because many architecture can't use memory hotplug yet. ARCH_ENABLE_MEMORY_HOTPLUG can say which architecture can use it and which config can use it too. Bye. ----- Memory hotplug code of i386 adds memory to only highmem. So, if CONFIG_HIGHMEM is not set, CONFIG_MEMORY_HOTPLUG shouldn't be set. Otherwise, it causes compile error. In addition, many architecture can't use memory hotplug feature yet. So, I introduce CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG. Signed-off-by: Yasunori Goto <y-goto@jp.fujitsu.com> --- arch/i386/Kconfig | 3 +++ arch/ia64/Kconfig | 3 +++ arch/powerpc/Kconfig | 3 +++ arch/x86_64/Kconfig | 2 ++ mm/Kconfig | 2 +- 5 files changed, 12 insertions(+), 1 deletion(-) Index: linux-2.6.17/mm/Kconfig =================================================================== --- linux-2.6.17.orig/mm/Kconfig 2006-06-26 14:19:11.000000000 +0900 +++ linux-2.6.17/mm/Kconfig 2006-06-27 16:54:56.000000000 +0900 @@ -115,7 +115,7 @@ config SPARSEMEM_EXTREME # eventually, we can have this option just 'select SPARSEMEM' config MEMORY_HOTPLUG bool "Allow for memory hot-add" - depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND + depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND && ARCH_ENABLE_MEMORY_HOTPLUG comment "Memory hotplug is currently incompatible with Software Suspend" depends on SPARSEMEM && HOTPLUG && SOFTWARE_SUSPEND Index: linux-2.6.17/arch/i386/Kconfig =================================================================== --- linux-2.6.17.orig/arch/i386/Kconfig 2006-06-21 15:05:17.000000000 +0900 +++ linux-2.6.17/arch/i386/Kconfig 2006-06-27 16:44:01.000000000 +0900 @@ -762,6 +762,9 @@ config HOTPLUG_CPU enable suspend on SMP systems. CPUs can be controlled through /sys/devices/system/cpu. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y + depends on HIGHMEM endmenu Index: linux-2.6.17/arch/ia64/Kconfig =================================================================== --- linux-2.6.17.orig/arch/ia64/Kconfig 2006-06-21 15:05:18.000000000 +0900 +++ linux-2.6.17/arch/ia64/Kconfig 2006-06-27 16:52:51.000000000 +0900 @@ -270,6 +270,9 @@ config HOTPLUG_CPU can be controlled through /sys/devices/system/cpu/cpu#. Say N if you want to disable CPU hotplug. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y + config SCHED_SMT bool "SMT scheduler support" depends on SMP Index: linux-2.6.17/arch/powerpc/Kconfig =================================================================== --- linux-2.6.17.orig/arch/powerpc/Kconfig 2006-06-21 15:05:29.000000000 +0900 +++ linux-2.6.17/arch/powerpc/Kconfig 2006-06-27 16:54:35.000000000 +0900 @@ -599,6 +599,9 @@ config HOTPLUG_CPU Say N if you are unsure. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y + config KEXEC bool "kexec system call (EXPERIMENTAL)" depends on PPC_MULTIPLATFORM && EXPERIMENTAL Index: linux-2.6.17/arch/x86_64/Kconfig =================================================================== --- linux-2.6.17.orig/arch/x86_64/Kconfig 2006-06-21 15:05:40.000000000 +0900 +++ linux-2.6.17/arch/x86_64/Kconfig 2006-06-27 16:55:41.000000000 +0900 @@ -369,6 +369,8 @@ config HOTPLUG_CPU can be controlled through /sys/devices/system/cpu/cpu#. Say N if you want to disable CPU hotplug. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y config HPET_TIMER bool -- Yasunori Goto ^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH] solve config broken: undefined reference to `online_page' 2006-06-28 2:27 ` Yasunori Goto @ 2006-06-29 3:21 ` Yasunori Goto 2006-06-29 14:58 ` Dave Hansen 2006-06-30 2:14 ` Chris Wright 0 siblings, 2 replies; 11+ messages in thread From: Yasunori Goto @ 2006-06-29 3:21 UTC (permalink / raw) To: Andrew Morton Cc: Andy Whitcroft, Dave Hansen, Toralf Foerster, linux-kernel, Chuck Ebbert, Randy.Dunlap Hi Andrew-san. I made a small patch for compile error of 2.6.17(.1). If CONFIG_HIGHMEM is not set and CONFIG_MEMORY_HOTPLUG is set on i386 box, the trouble occurs. Its trouble report is here. http://marc.theaimsgroup.com/?t=115104987100003&r=1&w=2 At first, I wanted to send stable kernel which is 2.6.17.x. But, Documentation/stable_kernel_rules.txt says that config broken trouble is not acceptable for it. So, I would like to send this to 2.6.18-rcX. Please apply. Thanks. ----- Memory hotplug code of i386 adds memory to only highmem. So, if CONFIG_HIGHMEM is not set, CONFIG_MEMORY_HOTPLUG shouldn't be set. Otherwise, it causes compile error. In addition, many architecture can't use memory hotplug feature yet. So, I introduce CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG. Signed-off-by: Yasunori Goto <y-goto@jp.fujitsu.com> --- arch/i386/Kconfig | 3 +++ arch/ia64/Kconfig | 3 +++ arch/powerpc/Kconfig | 3 +++ arch/x86_64/Kconfig | 2 ++ mm/Kconfig | 2 +- 5 files changed, 12 insertions(+), 1 deletion(-) Index: linux-2.6.17/mm/Kconfig =================================================================== --- linux-2.6.17.orig/mm/Kconfig 2006-06-26 14:19:11.000000000 +0900 +++ linux-2.6.17/mm/Kconfig 2006-06-27 16:54:56.000000000 +0900 @@ -115,7 +115,7 @@ config SPARSEMEM_EXTREME # eventually, we can have this option just 'select SPARSEMEM' config MEMORY_HOTPLUG bool "Allow for memory hot-add" - depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND + depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND && ARCH_ENABLE_MEMORY_HOTPLUG comment "Memory hotplug is currently incompatible with Software Suspend" depends on SPARSEMEM && HOTPLUG && SOFTWARE_SUSPEND Index: linux-2.6.17/arch/i386/Kconfig =================================================================== --- linux-2.6.17.orig/arch/i386/Kconfig 2006-06-21 15:05:17.000000000 +0900 +++ linux-2.6.17/arch/i386/Kconfig 2006-06-27 16:44:01.000000000 +0900 @@ -762,6 +762,9 @@ config HOTPLUG_CPU enable suspend on SMP systems. CPUs can be controlled through /sys/devices/system/cpu. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y + depends on HIGHMEM endmenu Index: linux-2.6.17/arch/ia64/Kconfig =================================================================== --- linux-2.6.17.orig/arch/ia64/Kconfig 2006-06-21 15:05:18.000000000 +0900 +++ linux-2.6.17/arch/ia64/Kconfig 2006-06-27 16:52:51.000000000 +0900 @@ -270,6 +270,9 @@ config HOTPLUG_CPU can be controlled through /sys/devices/system/cpu/cpu#. Say N if you want to disable CPU hotplug. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y + config SCHED_SMT bool "SMT scheduler support" depends on SMP Index: linux-2.6.17/arch/powerpc/Kconfig =================================================================== --- linux-2.6.17.orig/arch/powerpc/Kconfig 2006-06-21 15:05:29.000000000 +0900 +++ linux-2.6.17/arch/powerpc/Kconfig 2006-06-27 16:54:35.000000000 +0900 @@ -599,6 +599,9 @@ config HOTPLUG_CPU Say N if you are unsure. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y + config KEXEC bool "kexec system call (EXPERIMENTAL)" depends on PPC_MULTIPLATFORM && EXPERIMENTAL Index: linux-2.6.17/arch/x86_64/Kconfig =================================================================== --- linux-2.6.17.orig/arch/x86_64/Kconfig 2006-06-21 15:05:40.000000000 +0900 +++ linux-2.6.17/arch/x86_64/Kconfig 2006-06-27 16:55:41.000000000 +0900 @@ -369,6 +369,8 @@ config HOTPLUG_CPU can be controlled through /sys/devices/system/cpu/cpu#. Say N if you want to disable CPU hotplug. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y config HPET_TIMER bool -- Yasunori Goto ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] solve config broken: undefined reference to `online_page' 2006-06-29 3:21 ` [PATCH] solve config broken: " Yasunori Goto @ 2006-06-29 14:58 ` Dave Hansen 2006-06-30 2:14 ` Chris Wright 1 sibling, 0 replies; 11+ messages in thread From: Dave Hansen @ 2006-06-29 14:58 UTC (permalink / raw) To: Yasunori Goto Cc: Andrew Morton, Andy Whitcroft, Toralf Foerster, linux-kernel, Chuck Ebbert, Randy.Dunlap On Thu, 2006-06-29 at 12:21 +0900, Yasunori Goto wrote: > Hi Andrew-san. > > I made a small patch for compile error of 2.6.17(.1). > If CONFIG_HIGHMEM is not set and CONFIG_MEMORY_HOTPLUG is set on i386 > box, the trouble occurs. Its trouble report is here. > http://marc.theaimsgroup.com/?t=115104987100003&r=1&w=2 > > At first, I wanted to send stable kernel which is 2.6.17.x. > But, Documentation/stable_kernel_rules.txt says that config > broken trouble is not acceptable for it. So, I would like to send > this to 2.6.18-rcX. > > Please apply. Acked-by: Dave Hansen <haveblue@us.ibm.com> -- Dave ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] solve config broken: undefined reference to `online_page' 2006-06-29 3:21 ` [PATCH] solve config broken: " Yasunori Goto 2006-06-29 14:58 ` Dave Hansen @ 2006-06-30 2:14 ` Chris Wright 2006-06-30 2:20 ` Chris Wright 1 sibling, 1 reply; 11+ messages in thread From: Chris Wright @ 2006-06-30 2:14 UTC (permalink / raw) To: Yasunori Goto Cc: Andrew Morton, Andy Whitcroft, Dave Hansen, Toralf Foerster, linux-kernel, Chuck Ebbert, Randy.Dunlap * Yasunori Goto (y-goto@jp.fujitsu.com) wrote: > I made a small patch for compile error of 2.6.17(.1). > If CONFIG_HIGHMEM is not set and CONFIG_MEMORY_HOTPLUG is set on i386 > box, the trouble occurs. Its trouble report is here. > http://marc.theaimsgroup.com/?t=115104987100003&r=1&w=2 > > At first, I wanted to send stable kernel which is 2.6.17.x. > But, Documentation/stable_kernel_rules.txt says that config > broken trouble is not acceptable for it. So, I would like to send > this to 2.6.18-rcX. This is fine for stable. It fixes a compile bug. The stable kernel rules are referring to features that are marked broken (meaning 'depends on BROKEN') in Kconfig. This patch didn't quite apply to 2.6.17.2, so I fixed it up, could you double check please? thanks, -chris --- > From cc57637b0b015fb5d70dbbec740de516d33af07d Mon Sep 17 00:00:00 2001 From: Yasunori Goto <y-goto@jp.fujitsu.com> Subject: solve config broken: undefined reference to `online_page' Memory hotplug code of i386 adds memory to only highmem. So, if CONFIG_HIGHMEM is not set, CONFIG_MEMORY_HOTPLUG shouldn't be set. Otherwise, it causes compile error. In addition, many architecture can't use memory hotplug feature yet. So, I introduce CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG. Signed-off-by: Yasunori Goto <y-goto@jp.fujitsu.com> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Chris Wright <chrisw@sous-sol.org> --- arch/i386/Kconfig | 3 +++ arch/ia64/Kconfig | 3 +++ arch/powerpc/Kconfig | 3 +++ arch/x86_64/Kconfig | 2 ++ mm/Kconfig | 2 +- 5 files changed, 12 insertions(+), 1 deletions(-) --- a/arch/i386/Kconfig +++ b/arch/i386/Kconfig @@ -794,6 +794,9 @@ config COMPAT_VDSO endmenu +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y + depends on HIGHMEM menu "Power management options (ACPI, APM)" depends on !X86_VOYAGER diff --git a/arch/ia64/Kconfig b/arch/ia64/Kconfig index a56df7b..5faacbb 100644 --- a/arch/ia64/Kconfig +++ b/arch/ia64/Kconfig @@ -271,6 +271,9 @@ config HOTPLUG_CPU can be controlled through /sys/devices/system/cpu/cpu#. Say N if you want to disable CPU hotplug. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y + config SCHED_SMT bool "SMT scheduler support" depends on SMP diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index e922a88..e2e9df3 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig @@ -618,6 +618,9 @@ config HOTPLUG_CPU Say N if you are unsure. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y + config KEXEC bool "kexec system call (EXPERIMENTAL)" depends on PPC_MULTIPLATFORM && EXPERIMENTAL diff --git a/arch/x86_64/Kconfig b/arch/x86_64/Kconfig index ccc4a7f..9103984 100644 --- a/arch/x86_64/Kconfig +++ b/arch/x86_64/Kconfig @@ -370,6 +370,8 @@ config HOTPLUG_CPU can be controlled through /sys/devices/system/cpu/cpu#. Say N if you want to disable CPU hotplug. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y config HPET_TIMER bool diff --git a/mm/Kconfig b/mm/Kconfig index e76c023..8391729 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -115,7 +115,7 @@ config SPARSEMEM_EXTREME # eventually, we can have this option just 'select SPARSEMEM' config MEMORY_HOTPLUG bool "Allow for memory hot-add" - depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND + depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND && ARCH_ENABLE_MEMORY_HOTPLUG depends on (IA64 || X86 || PPC64) comment "Memory hotplug is currently incompatible with Software Suspend" ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] solve config broken: undefined reference to `online_page' 2006-06-30 2:14 ` Chris Wright @ 2006-06-30 2:20 ` Chris Wright 0 siblings, 0 replies; 11+ messages in thread From: Chris Wright @ 2006-06-30 2:20 UTC (permalink / raw) To: Yasunori Goto Cc: Andrew Morton, Chris Wright, Andy Whitcroft, Dave Hansen, Toralf Foerster, linux-kernel, Chuck Ebbert, Randy.Dunlap * Chris Wright (chrisw@sous-sol.org) wrote: > This patch didn't > quite apply to 2.6.17.2, so I fixed it up, could you double check > please? Bah, the refreshed patch attached. Sorry about the noise. thanks, -chris -- > From cc57637b0b015fb5d70dbbec740de516d33af07d Mon Sep 17 00:00:00 2001 From: Yasunori Goto <y-goto@jp.fujitsu.com> Subject: solve config broken: undefined reference to `online_page' Memory hotplug code of i386 adds memory to only highmem. So, if CONFIG_HIGHMEM is not set, CONFIG_MEMORY_HOTPLUG shouldn't be set. Otherwise, it causes compile error. In addition, many architecture can't use memory hotplug feature yet. So, I introduce CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG. Signed-off-by: Yasunori Goto <y-goto@jp.fujitsu.com> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Chris Wright <chrisw@sous-sol.org> --- arch/i386/Kconfig | 3 +++ arch/ia64/Kconfig | 3 +++ arch/powerpc/Kconfig | 3 +++ arch/x86_64/Kconfig | 2 ++ mm/Kconfig | 2 +- 5 files changed, 12 insertions(+), 1 deletion(-) --- linux-2.6.17.2.orig/arch/i386/Kconfig +++ linux-2.6.17.2/arch/i386/Kconfig @@ -765,6 +765,9 @@ config HOTPLUG_CPU endmenu +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y + depends on HIGHMEM menu "Power management options (ACPI, APM)" depends on !X86_VOYAGER --- linux-2.6.17.2.orig/arch/ia64/Kconfig +++ linux-2.6.17.2/arch/ia64/Kconfig @@ -270,6 +270,9 @@ config HOTPLUG_CPU can be controlled through /sys/devices/system/cpu/cpu#. Say N if you want to disable CPU hotplug. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y + config SCHED_SMT bool "SMT scheduler support" depends on SMP --- linux-2.6.17.2.orig/arch/powerpc/Kconfig +++ linux-2.6.17.2/arch/powerpc/Kconfig @@ -599,6 +599,9 @@ config HOTPLUG_CPU Say N if you are unsure. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y + config KEXEC bool "kexec system call (EXPERIMENTAL)" depends on PPC_MULTIPLATFORM && EXPERIMENTAL --- linux-2.6.17.2.orig/arch/x86_64/Kconfig +++ linux-2.6.17.2/arch/x86_64/Kconfig @@ -369,6 +369,8 @@ config HOTPLUG_CPU can be controlled through /sys/devices/system/cpu/cpu#. Say N if you want to disable CPU hotplug. +config ARCH_ENABLE_MEMORY_HOTPLUG + def_bool y config HPET_TIMER bool --- linux-2.6.17.2.orig/mm/Kconfig +++ linux-2.6.17.2/mm/Kconfig @@ -115,7 +115,7 @@ config SPARSEMEM_EXTREME # eventually, we can have this option just 'select SPARSEMEM' config MEMORY_HOTPLUG bool "Allow for memory hot-add" - depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND + depends on SPARSEMEM && HOTPLUG && !SOFTWARE_SUSPEND && ARCH_ENABLE_MEMORY_HOTPLUG comment "Memory hotplug is currently incompatible with Software Suspend" depends on SPARSEMEM && HOTPLUG && SOFTWARE_SUSPEND ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2006-06-30 2:20 UTC | newest] Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2006-06-25 21:01 linux-2.6.17.1: undefined reference to `online_page' Chuck Ebbert 2006-06-25 21:23 ` Randy.Dunlap 2006-06-26 7:39 ` Yasunori Goto 2006-06-26 17:46 ` Dave Hansen 2006-06-27 11:55 ` Yasunori Goto 2006-06-27 12:10 ` Andy Whitcroft 2006-06-28 2:27 ` Yasunori Goto 2006-06-29 3:21 ` [PATCH] solve config broken: " Yasunori Goto 2006-06-29 14:58 ` Dave Hansen 2006-06-30 2:14 ` Chris Wright 2006-06-30 2:20 ` Chris Wright
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox
Powered by JetHome