

![]() | Start a set with this search |
![]() | Include this search in one of my sets |
![]() | Exclude this search from one of my sets |
![]() | Permalink to these results Paste this link in email or IM: |
| Atom feed for tracking future search results Paste this URL into your reader: |
89 messages in org.kernel.vger.linux-kernelRe: [PATCH] Address space split confi...| From | Sent On | Attachments |
|---|---|---|
| Jens Axboe | Jan 10, 2006 4:58 am | |
| Ingo Molnar | Jan 10, 2006 5:29 am | |
| Jens Axboe | Jan 10, 2006 5:37 am | |
| Byron Stanoszek | Jan 10, 2006 5:43 am | |
| Jens Axboe | Jan 10, 2006 5:47 am | |
| Mikael Pettersson | Jan 10, 2006 5:47 am | |
| Jens Axboe | Jan 10, 2006 5:53 am | |
| Gerd Hoffmann | Jan 10, 2006 6:09 am | |
| Mark Lord | Jan 10, 2006 6:11 am | |
| Jens Axboe | Jan 10, 2006 6:21 am | |
| Jens Axboe | Jan 10, 2006 6:22 am | |
| Jens Axboe | Jan 10, 2006 6:25 am | |
| Jens Axboe | Jan 10, 2006 6:39 am | |
| Ingo Molnar | Jan 10, 2006 6:43 am | |
| Jens Axboe | Jan 10, 2006 7:03 am | |
| Mark Lord | Jan 10, 2006 7:11 am | .patch |
| Mikael Pettersson | Jan 10, 2006 7:23 am | |
| Linus Torvalds | Jan 10, 2006 8:14 am | |
| Jeff V. Merkey | Jan 10, 2006 8:30 am | .patch, .patch |
| Mark Lord | Jan 10, 2006 8:39 am | |
| Linus Torvalds | Jan 10, 2006 8:52 am | |
| Jeff V. Merkey | Jan 10, 2006 8:56 am | |
| Jeff V. Merkey | Jan 10, 2006 9:00 am | |
| Mark Lord | Jan 10, 2006 9:06 am | |
| Sergey Vlasov | Jan 10, 2006 9:07 am | |
| Jeff V. Merkey | Jan 10, 2006 9:13 am | |
| Jeff V. Merkey | Jan 10, 2006 9:17 am | |
| Linus Torvalds | Jan 10, 2006 9:28 am | |
| Jens Axboe | Jan 10, 2006 9:32 am | |
| Jeff V. Merkey | Jan 10, 2006 9:36 am | |
| Mark Lord | Jan 10, 2006 9:36 am | |
| Bernd Eckenfels | Jan 10, 2006 9:48 am | |
| Martin Bligh | Jan 10, 2006 10:14 am | |
| Coywolf Qi Hunt | Jan 10, 2006 10:27 am | |
| Coywolf Qi Hunt | Jan 10, 2006 10:32 am | |
| Linus Torvalds | Jan 10, 2006 10:34 am | |
| Martin Bligh | Jan 10, 2006 10:39 am | |
| Mark Lord | Jan 10, 2006 10:45 am | |
| Martin Bligh | Jan 10, 2006 10:46 am | |
| Lennart Sorensen | Jan 10, 2006 10:50 am | |
| Dave Hansen | Jan 10, 2006 10:54 am | |
| Mark Lord | Jan 10, 2006 10:57 am | |
| Jens Axboe | Jan 10, 2006 10:57 am | |
| Mark Lord | Jan 10, 2006 11:01 am | |
| Dave Hansen | Jan 10, 2006 11:04 am | |
| Jeff V. Merkey | Jan 10, 2006 11:12 am | |
| Mark Lord | Jan 10, 2006 11:15 am | |
| Jens Axboe | Jan 10, 2006 11:26 am | |
| Jeff V. Merkey | Jan 10, 2006 11:30 am | |
| Jens Axboe | Jan 10, 2006 11:41 am | |
| Bernd Eckenfels | Jan 10, 2006 12:17 pm | |
| Jens Axboe | Jan 10, 2006 12:27 pm | |
| Jan Engelhardt | Jan 10, 2006 12:42 pm | |
| Alan Cox | Jan 10, 2006 12:54 pm | |
| Jens Axboe | Jan 10, 2006 1:02 pm | |
| Con Kolivas | Jan 10, 2006 4:25 pm | |
| J.A. Magallon | Jan 10, 2006 5:12 pm | |
| Bernd Eckenfels | Jan 11, 2006 12:39 am | |
| Jens Axboe | Jan 11, 2006 2:05 am | |
| Jens Axboe | Jan 11, 2006 2:15 am | |
| Greg Norris | Jan 11, 2006 8:00 am | |
| Mark Lord | Jan 11, 2006 9:12 am | |
| Greg Norris | Jan 11, 2006 9:44 am | |
| Herbert Poetzl | Feb 1, 2006 2:22 pm | |
| Ulrich Mueller | Feb 2, 2006 3:03 am | |
| Jan Engelhardt | Feb 2, 2006 12:55 pm | |
| Mark Lord | Feb 3, 2006 2:38 pm | |
| Ulrich Mueller | Feb 4, 2006 2:22 am | |
| Jens Axboe | Feb 4, 2006 2:35 am | |
| Jan Engelhardt | Feb 4, 2006 3:04 am | |
| Jan Engelhardt | Feb 4, 2006 3:05 am | |
| Mark Lord | Feb 4, 2006 5:57 am | |
| J.A. Magallon | Feb 5, 2006 7:32 am | |
| Arjan van de Ven | Feb 5, 2006 7:38 am | |
| Barry K. Nathan | Feb 5, 2006 10:41 am | |
| Bodo Eggert | Feb 5, 2006 12:20 pm | |
| Jan Engelhardt | Feb 5, 2006 1:13 pm | |
| Arjan van de Ven | Feb 5, 2006 1:18 pm | |
| Jeff Dike | Feb 5, 2006 2:12 pm | |
| Jan Engelhardt | Feb 6, 2006 6:56 am | |
| Herbert Poetzl | Feb 6, 2006 4:41 pm | |
| Mark Rustad | Feb 6, 2006 6:50 pm | |
| Bernd Petrovitsch | Feb 7, 2006 1:37 am | |
| Adrian Bunk | Feb 7, 2006 4:19 am | |
| Ulrich Mueller | Feb 7, 2006 6:05 am | |
| Adrian Bunk | Feb 7, 2006 6:42 am | |
| Jan Engelhardt | Feb 9, 2006 8:06 am | |
| Kirill Korotaev | Apr 10, 2006 7:10 am | |
| Mark Lord | Apr 10, 2006 7:39 am |

![]() | Permalink for this message Paste this link in email or IM: |
![]() | Permalink for this thread Paste this link in email or IM: |
| Atom feed for this thread Paste this URL into your reader: |
| Subject: | Re: [PATCH] Address space split configuration | Actions... |
|---|---|---|
| From: | Mikael Pettersson (mik...@csd.uu.se) | |
| Date: | Jan 10, 2006 7:23:57 am | |
| List: | org.kernel.vger.linux-kernel | |
Jens Axboe writes:
Thanks! Updated patch below.
---
Add option for configuring the page offset, to better optimize the kernel for higher memory machines. Enables users to get rid of high memory for eg a 1GiB machine.
Signed-off-by: Jens Axboe <axb...@suse.de> Acked-by: Ingo Molnar <min...@elte.hu>
Acked-by: Mikael Pettersson <mik...@csd.uu.se>
diff --git a/arch/i386/Kconfig b/arch/i386/Kconfig index d849c68..20d1423 100644 --- a/arch/i386/Kconfig +++ b/arch/i386/Kconfig @@ -444,6 +464,35 @@ config HIGHMEM64G
endchoice
+choice + depends on NOHIGHMEM && EXPERIMENTAL + prompt "Memory split" + default DEFAULT_3G + help + Select the wanted 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. + + If you are not absolutely sure what you are doing, leave this + option alone! + + config DEFAULT_3G + bool "3G/1G user/kernel split" + config DEFAULT_3G_OPT + bool "3G/1G user/kernel split (for full 1G low memory)" + config DEFAULT_2G + bool "2G/2G user/kernel split" + config DEFAULT_1G + bool "1G/3G user/kernel split" + +endchoice + config HIGHMEM bool depends on HIGHMEM64G || HIGHMEM4G diff --git a/arch/i386/mm/init.c b/arch/i386/mm/init.c index 7df494b..67f1da0 100644 --- a/arch/i386/mm/init.c +++ b/arch/i386/mm/init.c @@ -597,6 +597,12 @@ void __init mem_init(void) high_memory = (void *) __va(max_low_pfn * PAGE_SIZE - 1) + 1; #endif
+#if !defined(CONFIG_DEFAULT_3G)
+ /* if the user has less than 960MB of RAM, he should use the default */
+ if (max_low_pfn < (960 * 1024 * 1024 / PAGE_SIZE))
+ printk(KERN_INFO "Memory: less than 960MiB of RAM, you should use the default
memory split setting\n");
+#endif
+
/* this will put all low memory onto the freelists */
totalram_pages += free_all_bootmem();
diff --git a/include/asm-i386/page.h b/include/asm-i386/page.h index 73296d9..7da50a1 100644 --- a/include/asm-i386/page.h +++ b/include/asm-i386/page.h @@ -109,11 +109,23 @@ extern int page_is_ram(unsigned long pag
#endif /* __ASSEMBLY__ */
+#if defined(CONFIG_DEFAULT_3G) +#define __PAGE_OFFSET_RAW (0xC0000000) +#elif defined(CONFIG_DEFAULT_3G_OPT) +#define __PAGE_OFFSET_RAW (0xB0000000) +#elif defined(CONFIG_DEFAULT_2G) +#define __PAGE_OFFSET_RAW (0x78000000) +#elif defined(CONFIG_DEFAULT_1G) +#define __PAGE_OFFSET_RAW (0x40000000) +#else +#error "Bad user/kernel offset" +#endif + #ifdef __ASSEMBLY__ -#define __PAGE_OFFSET (0xC0000000) +#define __PAGE_OFFSET __PAGE_OFFSET_RAW #define __PHYSICAL_START CONFIG_PHYSICAL_START #else -#define __PAGE_OFFSET (0xC0000000UL) +#define __PAGE_OFFSET ((unsigned long)__PAGE_OFFSET_RAW) #define __PHYSICAL_START ((unsigned long)CONFIG_PHYSICAL_START) #endif #define __KERNEL_START (__PAGE_OFFSET + __PHYSICAL_START)
-- Jens Axboe
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majo...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majo...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/








.patch