[PATCH] x86_64: acpi map table fix

From: Vivek Goyal
Date: Wed Dec 07 2005 - 23:14:33 EST




o Memory till end_pfn_map has been directly mapped. So all the memory
references to the last page (represented by end_pfn_map) should be
valid.

o I run into problem with kdump when I use memmap=exactmap option and also
pass memmap=X#Y to directly map acpi tables. ACPI initialization in second
kernel fails because some of the valid ACPI memory is not accessible.

o /proc/iomem shows ACPI tables at c7fcb940-c7fcf7ff : ACPI Tables. Here
end_pfn_map is set to c7fcf000. But c7fcf700 should also be a valid access.

Signed-off-by: Vivek Goyal <vgoyal@xxxxxxxxxx>
---


diff -puN arch/i386/kernel/acpi/boot.c~acpi-map-address-fix arch/i386/kernel/acpi/boot.c
--- linux-2.6.15-rc5-mm1-16M/arch/i386/kernel/acpi/boot.c~acpi-map-address-fix 2005-12-07 15:56:33.000000000 +0530
+++ linux-2.6.15-rc5-mm1-16M-root/arch/i386/kernel/acpi/boot.c 2005-12-07 15:58:04.000000000 +0530
@@ -108,7 +108,7 @@ char *__acpi_map_table(unsigned long phy
if (!phys_addr || !size)
return NULL;

- if (phys_addr < (end_pfn_map << PAGE_SHIFT))
+ if (phys_addr < ((end_pfn_map << PAGE_SHIFT) + PAGE_SIZE))
return __va(phys_addr);

return NULL;
_
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/