M. Mohan Kumar wrote:
On Tue, Aug 25, 2009 at 02:23:04PM +0800, Amerigo Wang wrote:Michael Ellerman wrote:True, but since in the crash kernel, we have very little memory, so probably loading a full-featured SMP kernel doesn't make much sense...On Fri, 2009-08-21 at 02:55 -0400, Amerigo Wang wrote:Introduce a new config option KEXEC_AUTO_RESERVE for powerpc. Index: linux-2.6/arch/powerpc/Kconfig =================================================================== --- linux-2.6.orig/arch/powerpc/Kconfig +++ linux-2.6/arch/powerpc/Kconfig @@ -346,6 +346,17 @@ config KEXEC support. As of this writing the exact hardware interface is strongly in flux, so no good recommendation can be made. +config KEXEC_AUTO_RESERVE + bool "automatically reserve memory for kexec kernel" + depends on KEXEC + default y + ---help--- + Automatically reserve memory for a kexec kernel, so that you don't + need to specify numbers for the "crashkernel=X@Y" boot option, + instead you can use "crashkernel=auto". To make this work, you need + to have more than 4G memory. On PPC, 256M is reserved, 1/32 memory + on PPC64, but it will not exceed 1T/32.To be honest I don't see why this logic goes in the kernel. It seems to me that it's policy how much memory you devote to the crash kernel vs the production kernel. It depends on what kind of crash kernel you're loading, a minimal UP dump kernel, or a full-featured SMP behemoth, An it depends on how much memory you're willing to leave idle in the off-chance you crash.And in patch 1/8, I introduced a way to free the reserved memory at run-time.No, we set 4G as a threshold because we only want this work when have have enough memory which is defined as 4G currently... This can be changed to arch-dependent, e.g. ppc. I am very open to this.That aside, I don't see how this will be useful in practice, if it only works for memory sizes over 4G? Or are we saying that people with less than 4G don't need crash kernels? If we're not saying that, those users, or those users' distros, still need to do some logic to work out if they have < 4GB of memory and if so pick a crash kernel size. So why can't they pick the size in the > 4GB case also?So the distro/admin have to use crashkernel=auto for machines having more than 4GB RAM and for machines with less than 4GB RAM they have to use the crashkernel=x@y (or extended crashkernel syntax)? IMHO it will be nice if crashkernel=auto could handle all of the situations.
Exactly yes. As you suggested, I already change 4G to 2G on ppc.I think I have already explained the reason in a previous email, I just don't know if '2G - reserved_memory' is safe for ppc or not. What is the minimum memory size for a normal kernel to run on ppc? And how is it if I configure PAGE_SIZE > 4K, e.g. 64K?
Thanks! -- To unsubscribe from this list: send the line "unsubscribe linux-ia64" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
![]() |