Re: [PATCH]: expose FORCE_MAX_ZONEORDER on x86

From: Marc Leeman
Date: Thu Apr 05 2012 - 09:37:52 EST


> > I guess we could do this - but you forgot to sign off on your
> > patch.
>
> It took me some time, but I finally rebased the patch against 3.3

Sorry, the previous patch gave a (sloppy) whitespace warning, refreshed
it.

--
greetz, marc
harvey 2.6.29.1 #1 PREEMPT Mon Apr 6 22:33:31 CDT 2009 GNU/Linux
From 463bf232150089ee114ebc9712890ff5b0aca9c5 Mon Sep 17 00:00:00 2001
From: Marc Leeman <marc.leeman@xxxxxxxxx>
Date: Thu, 5 Apr 2012 14:25:22 +0200
Subject: KConfig x86: enable FORCE_MAX_ZONEORDER

Larger blocks of memory can be required for e.g. higher resolutions on
some capture card drivers; this patch just enables an already
available configuration option on x86 (it was already exposed on other
architectures).

The default is set to 11, as in
./include/linux/mmzone.h

[barco@nmgserver001 linux-3.0]$ find . -name Kconfig | xargs grep FORCE_MAX_ZONEORDER
./arch/ia64/Kconfig:config FORCE_MAX_ZONEORDER
./arch/cris/Kconfig:config FORCE_MAX_ZONEORDER
./arch/arm/Kconfig:config FORCE_MAX_ZONEORDER
./arch/s390/Kconfig:config FORCE_MAX_ZONEORDER
./arch/mips/Kconfig:config FORCE_MAX_ZONEORDER
./arch/sh/mm/Kconfig:config FORCE_MAX_ZONEORDER
./arch/blackfin/Kconfig:config FORCE_MAX_ZONEORDER
./arch/powerpc/Kconfig:config FORCE_MAX_ZONEORDER


Signed-off-by: Marc Leeman <marc.leeman@xxxxxxxxx>
---
arch/x86/Kconfig | 16 ++++++++++++++++
1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 1d14cc6..ba4ed6a 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -1296,6 +1296,22 @@ config ILLEGAL_POINTER_VALUE

source "mm/Kconfig"

+config FORCE_MAX_ZONEORDER
+ int "Maximum zone order"
+ range 11 64
+ default "11"
+ help
+ The kernel memory allocator divides physically contiguous memory
+ blocks into "zones", where each zone is a power of two number of
+ pages. This option selects the largest power of two that the kernel
+ keeps in the memory allocator. If you need to allocate very large
+ blocks of physically contiguous memory, then you may need to
+ increase this value.
+
+ This config option is actually maximum order plus one. For example,
+ a value of 11 means that the largest free memory block is 2^10 pages.
+
+
config HIGHPTE
bool "Allocate 3rd-level pagetables from highmem"
depends on HIGHMEM
--
1.7.2.5

Attachment: signature.asc
Description: Digital signature