Re: [Xen-devel] [PATCH 2/3] x86/acpi: take rsdp address for boot params if available

From: Roger Pau Monné
Date: Tue Nov 28 2017 - 05:18:44 EST


On Tue, Nov 28, 2017 at 10:43:59AM +0100, Juergen Gross wrote:
> In case the rsdp address in struct boot_params is specified don't try
> to find the table by searching, but take the address directly as set
> by the boot loader.
>
> Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
> ---
> drivers/acpi/osl.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c
> index 3bb46cb24a99..3b25e2ad7d75 100644
> --- a/drivers/acpi/osl.c
> +++ b/drivers/acpi/osl.c
> @@ -45,6 +45,10 @@
> #include <linux/uaccess.h>
> #include <linux/io-64-nonatomic-lo-hi.h>
>
> +#ifdef CONFIG_X86
> +#include <asm/setup.h>
> +#endif
> +
> #include "internal.h"
>
> #define _COMPONENT ACPI_OS_SERVICES
> @@ -195,6 +199,10 @@ acpi_physical_address __init acpi_os_get_root_pointer(void)
> if (acpi_rsdp)
> return acpi_rsdp;
> #endif
> +#ifdef CONFIG_X86
> + if (boot_params.hdr.acpi_rsdp_addr)
> + return boot_params.hdr.acpi_rsdp_addr;
> +#endif

I'm struggling to figure out how was PVH getting the RSDP previously,
because that should be removed now that it's in the zero-page.

Roger.