diff options
author | Yinghai Lu <Yinghai.Lu@Sun.COM> | 2008-01-30 13:33:39 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-01-30 13:33:39 +0100 |
commit | 261a5ec36befbe6bae069be14f45e618dcd35146 (patch) | |
tree | 460d7503548ec7cef31a78c8778c4910fb32462e /arch/x86 | |
parent | dff244af014144e4ac87dfc5b6e450dc8832710e (diff) | |
download | op-kernel-dev-261a5ec36befbe6bae069be14f45e618dcd35146.zip op-kernel-dev-261a5ec36befbe6bae069be14f45e618dcd35146.tar.gz |
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')
-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 0b837bb..608152a 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) if (!aper_base) return 0; - if (aper_size < 64*1024*1024) { - printk(KERN_ERR "Aperture too small (%d MB)\n", aper_size>>20); - return 0; - } if (aper_base + aper_size > 0x100000000UL) { printk(KERN_ERR "Aperture beyond 4GB. Ignoring.\n"); return 0; @@ -97,6 +93,10 @@ static int __init aperture_valid(u64 aper_base, u32 aper_size) printk(KERN_ERR "Aperture pointing to e820 RAM. Ignoring.\n"); return 0; } + if (aper_size < 64*1024*1024) { + printk(KERN_ERR "Aperture too small (%d MB)\n", aper_size>>20); + return 0; + } return 1; } |