Re: [Xen-devel] [PATCH 7 of 7] x86: always explicitly map acpi memory

Yinghai Lu
2008-09-07T23:35:38Z

On Sun, Sep 7, 2008 at 3:21 PM, Jeremy Fitzhardinge <jeremy@goop.org> wrote:
> Always map acpi tables, rather than assuming we can use the normal
> linear mapping to access the acpi tables. This is necessary in a
> virtual environment where the linear mappings are to pseudo-physical
> memory, but the acpi tables exist at a real physical address. It
> doesn't hurt to map in the normal non-virtual case, so just do it
> unconditionally.
>
> Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
> ---
> arch/x86/kernel/acpi/boot.c | 3 ---
> 1 file changed, 3 deletions(-)
>
> diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
> --- a/arch/x86/kernel/acpi/boot.c
> +++ b/arch/x86/kernel/acpi/boot.c
> @@ -126,9 +126,6 @@
>
> if (!phys || !size)
> return NULL;
> -
> - if (phys+size <= (max_low_pfn_mapped << PAGE_SHIFT))
> - return __va(phys);
>
> if (prev_map)
> early_iounmap(prev_map, prev_size);
>

actually,
case 1: acpi tables near mmio, range, we don't map them from
2.6.27-rc1, and it is bigger than max_low_mapped...
case 2: some strange system put acpi in the middle of RAM... like when
8G ram installed, but MMIO is 3.5G, BIOS put acpi tables around 2G..

YH