Re: [PATCH 1/1] - Altix: reinitialize acpi tables
From: Len Brown
Date: Thu Mar 01 2007 - 02:36:58 EST
so will the 1st acpi_table_init() always fail -- even
on future machines?
-Len
On Wednesday 28 February 2007 18:47, John Keller wrote:
> To provide compatibilty with SN kernels that do and do not
> have ACPI IO support, the SN PROM must build different
> versions of some ACPI tables based on which kernel is booting.
> As such, the tables may have to change at kernel boot time.
> By default, prior to kernel boot, the PROM builds an empty
> DSDT (header only) and no SSDTs. If an ACPI capable kernel
> boots, the kernel will notify the PROM, at platform setup time,
> and the PROM will build full DSDT and SSDT tables.
>
> With the latest changes to acpi_table_init(), the table lengths
> are saved, and when our PROM changes them, the changes are not seen,
> and the kernel will crash on boot. Because of issues with kexec support,
> we are not able to create the tables prior to acpi_table_init().
> As a result, we are making a second call to acpi_table_init() to
> process the rebuilt DSDT and SSDTs.
>
> Signed-off-by: John Keller <jpk@xxxxxxx>
> ---
>
>
> Index: release/arch/ia64/sn/kernel/setup.c
> ===================================================================
> --- release.orig/arch/ia64/sn/kernel/setup.c 2007-02-28 11:02:34.558139870 -0600
> +++ release/arch/ia64/sn/kernel/setup.c 2007-02-28 11:02:39.362737953 -0600
> @@ -397,6 +397,8 @@ void __init sn_setup(char **cmdline_p)
> ia64_sn_set_os_feature(OSF_PCISEGMENT_ENABLE);
> ia64_sn_set_os_feature(OSF_ACPI_ENABLE);
>
> + /* Load the new DSDT and SSDT tables into the global table list. */
> + acpi_table_init();
>
> #if defined(CONFIG_VT) && defined(CONFIG_VGA_CONSOLE)
> /*
> -
> To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
-
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/