From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932250AbWAJRhT (ORCPT ); Tue, 10 Jan 2006 12:37:19 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S932258AbWAJRhT (ORCPT ); Tue, 10 Jan 2006 12:37:19 -0500 Received: from rtr.ca ([64.26.128.89]:46531 "EHLO mail.rtr.ca") by vger.kernel.org with ESMTP id S932250AbWAJRhR (ORCPT ); Tue, 10 Jan 2006 12:37:17 -0500 Message-ID: <43C3F0CA.10205@rtr.ca> Date: Tue, 10 Jan 2006 12:37:14 -0500 From: Mark Lord User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20051013 Debian/1.7.12-1ubuntu1 X-Accept-Language: en, en-us MIME-Version: 1.0 To: Jens Axboe Cc: Linus Torvalds , Byron Stanoszek , Ingo Molnar , linux-kernel@vger.kernel.org, Andrew Morton Subject: Re: 2G memory split References: <20060110125852.GA3389@suse.de> <20060110132957.GA28666@elte.hu> <20060110133728.GB3389@suse.de> <20060110143931.GM3389@suse.de> <43C3E9C2.1000309@rtr.ca> <20060110173217.GU3389@suse.de> In-Reply-To: <20060110173217.GU3389@suse.de> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Jens Axboe wrote: > On Tue, Jan 10 2006, Mark Lord wrote: >>So, the patch would now look like this: > Looks good to me! I'm just trying to save you some diff'ing, Jens! Here it is again, with Linus's latest. Andrew: please drop this into -mm for now, per Linus: Chief Penguin wrote: >Anyway, this should go into -mm, and I'd rather have it stay there for a >while. I've got tons of stuff for 2.6.16 already, I'd prefer to not see >this kind of thing too.. Signed-off-by: mlord@pobox.com diff -u --recursive --new-file --exclude='.*' linux-2.6.15/arch/i386/Kconfig linux/arch/i386/Kconfig --- linux-2.6.15/arch/i386/Kconfig 2006-01-02 22:21:10.000000000 -0500 +++ linux/arch/i386/Kconfig 2006-01-10 12:02:40.000000000 -0500 @@ -448,6 +448,43 @@ endchoice +choice + depends on EXPERIMENTAL && !X86_PAE + prompt "Memory split" + default VMSPLIT_3G + help + Select the desired split between kernel and user memory. + + If the address range available to the kernel is less than the + physical memory installed, the remaining memory will be available + as "high memory". Accessing high memory is a little more costly + than low memory, as it needs to be mapped into the kernel first. + Note that increasing the kernel address space limits the range + available to user programs, making the address space there + tighter. Selecting anything other than the default 3G/1G split + will also likely make your kernel incompatible with binary-only + kernel modules. + + If you are not absolutely sure what you are doing, leave this + option alone! + + config VMSPLIT_3G + bool "3G/1G user/kernel split" + config VMSPLIT_3G_OPT + bool "3G/1G user/kernel split (for full 1G low memory)" + config VMSPLIT_2G + bool "2G/2G user/kernel split" + config VMSPLIT_1G + bool "1G/3G user/kernel split" +endchoice + +config PAGE_OFFSET + hex + default 0xC0000000 + default 0xB0000000 if VMSPLIT_3G_OPT + default 0x78000000 if VMSPLIT_2G + default 0x40000000 if VMSPLIT_1G + config HIGHMEM bool depends on HIGHMEM64G || HIGHMEM4G diff -u --recursive --new-file --exclude='.*' linux-2.6.15/include/asm-i386/page.h linux/include/asm-i386/page.h --- linux-2.6.15/include/asm-i386/page.h 2006-01-02 22:21:10.000000000 -0500 +++ linux/include/asm-i386/page.h 2006-01-10 12:04:56.000000000 -0500 @@ -110,10 +110,10 @@ #endif /* __ASSEMBLY__ */ #ifdef __ASSEMBLY__ -#define __PAGE_OFFSET (0xC0000000) +#define __PAGE_OFFSET CONFIG_PAGE_OFFSET #define __PHYSICAL_START CONFIG_PHYSICAL_START #else -#define __PAGE_OFFSET (0xC0000000UL) +#define __PAGE_OFFSET ((unsigned long)CONFIG_PAGE_OFFSET) #define __PHYSICAL_START ((unsigned long)CONFIG_PHYSICAL_START) #endif #define __KERNEL_START (__PAGE_OFFSET + __PHYSICAL_START)