aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorYinghai Lu <yhlu.kernel.send@gmail.com>2008-04-29 04:59:49 -0400
committerThomas Gleixner <tglx@linutronix.de>2008-05-25 04:55:09 -0400
commit42651f15824d003e8357693ab72c4dbb3e280836 (patch)
tree1114071a407bfeb38edc12b7c822039641cd5c13 /include
parent95ffa2438d0e9c48779f0106b1c0eb36165e759c (diff)
x86: fix trimming e820 with MTRR holes.
converting MTRR layout from continous to discrete, some time could run out of MTRRs. So add gran_sizek to prevent that by dumpping small RAM piece less than gran_sizek. previous trimming only can handle highest_pfn from mtrr to end_pfn from e820. when have more than 4g RAM installed, there will be holes below 4g. so need to check ram below 4g is coverred well. need to be applied after [PATCH] x86: mtrr cleanup for converting continuous to discrete layout v7 Signed-off-by: Yinghai Lu <yinghai.lu@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include')
-rw-r--r--include/asm-x86/e820_32.h2
-rw-r--r--include/asm-x86/e820_64.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/include/asm-x86/e820_32.h b/include/asm-x86/e820_32.h
index e1f10c60901f..af0711b220df 100644
--- a/include/asm-x86/e820_32.h
+++ b/include/asm-x86/e820_32.h
@@ -31,7 +31,7 @@ extern void propagate_e820_map(void);
31extern void register_bootmem_low_pages(unsigned long max_low_pfn); 31extern void register_bootmem_low_pages(unsigned long max_low_pfn);
32extern void add_memory_region(unsigned long long start, 32extern void add_memory_region(unsigned long long start,
33 unsigned long long size, int type); 33 unsigned long long size, int type);
34extern void update_memory_range(u64 start, u64 size, unsigned old_type, 34extern u64 update_memory_range(u64 start, u64 size, unsigned old_type,
35 unsigned new_type); 35 unsigned new_type);
36extern void e820_register_memory(void); 36extern void e820_register_memory(void);
37extern void limit_regions(unsigned long long size); 37extern void limit_regions(unsigned long long size);
diff --git a/include/asm-x86/e820_64.h b/include/asm-x86/e820_64.h
index 71c4d685d30d..6ae3e2803286 100644
--- a/include/asm-x86/e820_64.h
+++ b/include/asm-x86/e820_64.h
@@ -21,7 +21,7 @@ extern unsigned long find_e820_area_size(unsigned long start,
21 unsigned long align); 21 unsigned long align);
22extern void add_memory_region(unsigned long start, unsigned long size, 22extern void add_memory_region(unsigned long start, unsigned long size,
23 int type); 23 int type);
24extern void update_memory_range(u64 start, u64 size, unsigned old_type, 24extern u64 update_memory_range(u64 start, u64 size, unsigned old_type,
25 unsigned new_type); 25 unsigned new_type);
26extern void setup_memory_region(void); 26extern void setup_memory_region(void);
27extern void contig_e820_setup(void); 27extern void contig_e820_setup(void);