summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAndrew Morton <akpm@osdl.org>2004-03-01 07:06:00 -0800
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-03-01 07:06:00 -0800
commit2955399da7452607232bf64680334d65a14133bd (patch)
treed2025f8f08c8a042bd3cc8e208a53915b51bc5ee /include
parenta1f3432196b0cdb63f0e8aa46ef61c7283f6fc15 (diff)
[PATCH] x86-64 fixes for 2.6.4rc1
From: Andi Kleen <ak@suse.de> Fix a few issues on x86-64 for 2.6.4rc1. The 32bit emulation used 4GB/3 for the mmap break. This actually gave programs less sbrk space than with a standard 32bit kernel. Move the 32bit mmap break to 0xc5000000. Uses the correct gcc option to optimize for Prescott now (requires a very new mainline gcc) Also merge the i386 sched_clock(). I hope this will fix some interactivity problems with the scheduler. - Change initializer to new style (Arnd Bergmann) - Remove 2 sibling limit in HT support (from i386) - Always log RIP in MCE records even when not exact - Move 32bit program task break up to 0xc5000000 by default - Use -march=prescott for Prescott optimized kernel if possible - Don't divide by zero with report_lost_ticks on and HPET off - Merge preempt/smp/debug_pagealloc oops printing from i386 - Add pfn_to_nid() - Merge more accurate sched_clock from i386 - Remove traces of debugging code in mce.c - Update defconfig
Diffstat (limited to 'include')
-rw-r--r--include/asm-x86_64/mmzone.h2
-rw-r--r--include/asm-x86_64/processor.h2
2 files changed, 3 insertions, 1 deletions
diff --git a/include/asm-x86_64/mmzone.h b/include/asm-x86_64/mmzone.h
index 1f8ec0b0f10f..53c62171a7c2 100644
--- a/include/asm-x86_64/mmzone.h
+++ b/include/asm-x86_64/mmzone.h
@@ -31,6 +31,8 @@ static inline __attribute__((pure)) int phys_to_nid(unsigned long addr)
return nid;
}
+#define pfn_to_nid(pfn) phys_to_nid((unsigned long)(pfn) << PAGE_SHIFT)
+
#define kvaddr_to_nid(kaddr) phys_to_nid(__pa(kaddr))
#define NODE_DATA(nid) (node_data[nid])
diff --git a/include/asm-x86_64/processor.h b/include/asm-x86_64/processor.h
index 838644f3c3c1..f8102636139c 100644
--- a/include/asm-x86_64/processor.h
+++ b/include/asm-x86_64/processor.h
@@ -173,7 +173,7 @@ static inline void clear_in_cr4 (unsigned long mask)
* space during mmap's.
*/
#define IA32_PAGE_OFFSET ((current->personality & ADDR_LIMIT_3GB) ? 0xc0000000 : 0xFFFFe000)
-#define TASK_UNMAPPED_32 (PAGE_ALIGN(IA32_PAGE_OFFSET / 3))
+#define TASK_UNMAPPED_32 (PAGE_ALIGN(0xc5000000))
#define TASK_UNMAPPED_64 PAGE_ALIGN(TASK_SIZE/3)
#define TASK_UNMAPPED_BASE \
(test_thread_flag(TIF_IA32) ? TASK_UNMAPPED_32 : TASK_UNMAPPED_64)