summary refs log tree commit diff
path: root/arch
diff options
context:
space:
mode:
authorTolentino, Matthew E <matthew.e.tolentino@intel.com>2006-03-26 01:37:09 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-03-26 08:56:54 -0800
commit23dd842c0033dbb05248c42929c3c526c55386de (patch)
tree997126ad81b01819094fb75ccb1a33c88ace6e17 /arch
parentb2c99e3c70d77fb194df5aa1642030080d28ea48 (diff)
downloadlinux-23dd842c0033dbb05248c42929c3c526c55386de.tar.gz
[PATCH] EFI fixes
Here's a patch that fixes EFI boot for x86 on 2.6.16-rc5-mm3.  The
off-by-one is admittedly my fault, but the other two fix up the rest.

Cc: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Matt Domsch <Matt_Domsch@dell.com>
Cc: "Tolentino, Matthew E" <matthew.e.tolentino@intel.com>
Cc: "Brown, Len" <len.brown@intel.com>
Cc: Andi Kleen <ak@muc.de>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/i386/kernel/dmi_scan.c2
-rw-r--r--arch/i386/kernel/setup.c6
2 files changed, 4 insertions, 4 deletions
diff --git a/arch/i386/kernel/dmi_scan.c b/arch/i386/kernel/dmi_scan.c
index 170d4c9f9bc3..5efceebc48dc 100644
--- a/arch/i386/kernel/dmi_scan.c
+++ b/arch/i386/kernel/dmi_scan.c
@@ -229,7 +229,7 @@ void __init dmi_scan_machine(void)
 			goto out;
 
 		rc = dmi_present(p + 0x10); /* offset of _DMI_ string */
-		iounmap(p);
+		dmi_iounmap(p, 32);
 		if (!rc)
 			return;
 	}
diff --git a/arch/i386/kernel/setup.c b/arch/i386/kernel/setup.c
index cec3c925ef99..6917daa159ab 100644
--- a/arch/i386/kernel/setup.c
+++ b/arch/i386/kernel/setup.c
@@ -1058,10 +1058,10 @@ static int __init
 free_available_memory(unsigned long start, unsigned long end, void *arg)
 {
 	/* check max_low_pfn */
-	if (start >= ((max_low_pfn + 1) << PAGE_SHIFT))
+	if (start >= (max_low_pfn << PAGE_SHIFT))
 		return 0;
-	if (end >= ((max_low_pfn + 1) << PAGE_SHIFT))
-		end = (max_low_pfn + 1) << PAGE_SHIFT;
+	if (end >= (max_low_pfn << PAGE_SHIFT))
+		end = max_low_pfn << PAGE_SHIFT;
 	if (start < end)
 		free_bootmem(start, end - start);