diff options
author | Yinghai Lu <yhlu.kernel.send@gmail.com> | 2008-03-18 19:44:19 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-03-21 12:06:15 -0400 |
commit | 5dca6a1bb014875a17289fdaae8c31e0a3641c99 (patch) | |
tree | c6cb1eab44e92cedbfcee707de6ed2ad960e20e6 /include/asm-x86/e820_64.h | |
parent | fc1c8925c8210009c1fc5d909d189252d8fb4fb2 (diff) |
x86: trim mtrr don't close gap for resource allocation.
fix the bug reported here:
http://bugzilla.kernel.org/show_bug.cgi?id=10232
use update_memory_range() instead of add_memory_range() directly
to avoid closing the gap.
( the new code only affects and runs on systems where the MTRR
workaround triggers. )
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/asm-x86/e820_64.h')
-rw-r--r-- | include/asm-x86/e820_64.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/asm-x86/e820_64.h b/include/asm-x86/e820_64.h index a560c4f5d500..22ede73ae724 100644 --- a/include/asm-x86/e820_64.h +++ b/include/asm-x86/e820_64.h | |||
@@ -18,6 +18,8 @@ extern unsigned long find_e820_area(unsigned long start, unsigned long end, | |||
18 | unsigned size, unsigned long align); | 18 | unsigned size, unsigned long align); |
19 | extern void add_memory_region(unsigned long start, unsigned long size, | 19 | extern void add_memory_region(unsigned long start, unsigned long size, |
20 | int type); | 20 | int type); |
21 | extern void update_memory_range(u64 start, u64 size, unsigned old_type, | ||
22 | unsigned new_type); | ||
21 | extern void setup_memory_region(void); | 23 | extern void setup_memory_region(void); |
22 | extern void contig_e820_setup(void); | 24 | extern void contig_e820_setup(void); |
23 | extern unsigned long e820_end_of_ram(void); | 25 | extern unsigned long e820_end_of_ram(void); |