diff options
author | Yinghai Lu <Yinghai.Lu@Sun.COM> | 2008-01-30 07:33:39 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-01-30 07:33:39 -0500 |
commit | 261a5ec36befbe6bae069be14f45e618dcd35146 (patch) | |
tree | 460d7503548ec7cef31a78c8778c4910fb32462e /arch/x86/kernel/aperture_64.c | |
parent | dff244af014144e4ac87dfc5b6e450dc8832710e (diff) |
x86: change aper valid checking sequence
old sequence:
size ==> >4G ==> point to RAM
changed to:
>4G ==> point to RAM ==> size
some bios even leave aper to unclear, so check size at last.
To avoid reporting:
Node 0: Aperture @ 4a42000000 size 32 MB
Aperture too small (32 MB)
with this change we will get:
Node 0: Aperture @ 4a42000000 size 32 MB
Aperture beyond 4G. Ignoring.
Signed-off-by: Yinghai Lu <yinghai.lu@sun.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/kernel/aperture_64.c')
-rw-r--r-- | arch/x86/kernel/aperture_64.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/x86/kernel/aperture_64.c b/arch/x86/kernel/aperture_64.c index 0b837bb3becb..608152a2a05e 100644 --- a/arch/x86/kernel/aperture_64.c +++ b/arch/x86/kernel/aperture_64.c | |||
@@ -85,10 +85,6 @@ static int __init aperture_valid(u64 aper_base, u32 aper_size) | |||
85 | if (!aper_base) | 85 | if (!aper_base) |
86 | return 0; | 86 | return 0; |
87 | 87 | ||
88 | if (aper_size < 64*1024*1024) { | ||
89 | printk(KERN_ERR "Aperture too small (%d MB)\n", aper_size>>20); | ||
90 | return 0; | ||
91 | } | ||
92 | if (aper_base + aper_size > 0x100000000UL) { | 88 | if (aper_base + aper_size > 0x100000000UL) { |
93 | printk(KERN_ERR "Aperture beyond 4GB. Ignoring.\n"); | 89 | printk(KERN_ERR "Aperture beyond 4GB. Ignoring.\n"); |
94 | return 0; | 90 | return 0; |
@@ -97,6 +93,10 @@ static int __init aperture_valid(u64 aper_base, u32 aper_size) | |||
97 | printk(KERN_ERR "Aperture pointing to e820 RAM. Ignoring.\n"); | 93 | printk(KERN_ERR "Aperture pointing to e820 RAM. Ignoring.\n"); |
98 | return 0; | 94 | return 0; |
99 | } | 95 | } |
96 | if (aper_size < 64*1024*1024) { | ||
97 | printk(KERN_ERR "Aperture too small (%d MB)\n", aper_size>>20); | ||
98 | return 0; | ||
99 | } | ||
100 | 100 | ||
101 | return 1; | 101 | return 1; |
102 | } | 102 | } |