Re: Git next: Second stage of cpu_alloc patches

From: Christoph Lameter
Date: Wed Nov 05 2008 - 08:59:50 EST


On Wed, 5 Nov 2008, Vegard Nossum wrote:

Just in case it helps track down the problem: Adding percpu=100000 to
the kernel command line got the thing booting for me. The number
itself was picked at random, but it worked on the first try. The
machine is a single-core P4 3.0 GHz with HT, 1G RAM, using slightly
modified F9 config.

Its only happening if !CONFIG_MODULES because then the reserve size is zero. The second stage patches fix that because there will then be other uses of the allocator so that reserves are always needed. This hunk from the second stage fixes the !CONFIG_MODULES issue.


Index: linux-2.6/include/linux/percpu.h
===================================================================
--- linux-2.6.orig/include/linux/percpu.h 2008-11-05 07:41:22.134646124 -0600
+++ linux-2.6/include/linux/percpu.h 2008-11-05 07:44:28.603155403 -0600
@@ -44,11 +44,7 @@
extern unsigned int percpu_reserve;
/* Enough to cover all DEFINE_PER_CPUs in kernel, including modules. */
#ifndef PERCPU_AREA_SIZE
-#ifdef CONFIG_MODULES
#define PERCPU_RESERVE_SIZE 8192
-#else
-#define PERCPU_RESERVE_SIZE 0
-#endif

#define PERCPU_AREA_SIZE \
(__per_cpu_end - __per_cpu_start + percpu_reserve)
--
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/