[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <512FC697.3090608@zytor.com>
Date: Thu, 28 Feb 2013 13:05:27 -0800
From: "H. Peter Anvin" <hpa@...or.com>
To: Robin Holt <holt@....com>
CC: hpa@....com, Yinghai Lu <yinghai@...nel.org>,
linux-kernel@...r.kernel.org
Subject: Re: Revert commit 5dcd14ecd4 - breaks EFI boot with SLES11 elilo.efi
On 02/28/2013 12:52 PM, Robin Holt wrote:
> If I revert that commit (5dcd14ecd4), It completes boot fine. With that
> commit applied, by ACPI tables (as well as much else) seems to be
> completely messed up. The ACPI XSDT table is removed, all the SRAT
> is gone. Much of the remaining ACPI table is messed up. Some of the
> EFI memory map is whacked.
>
> If I change the following, things work:
> diff --git a/arch/x86/include/asm/bootparam_utils.h b/arch/x86/include/asm/bootparam_utils.h
> index 5b5e9cb..85337ab 100644
> --- a/arch/x86/include/asm/bootparam_utils.h
> +++ b/arch/x86/include/asm/bootparam_utils.h
> @@ -19,9 +19,11 @@ static void sanitize_boot_params(struct boot_params *boot_params)
> {
> if (boot_params->sentinel) {
> /*fields in boot_params are not valid, clear them */
> +#if 0
> memset(&boot_params->olpc_ofw_header, 0,
> (char *)&boot_params->alt_mem_k -
> (char *)&boot_params->olpc_ofw_header);
> +#endif
> memset(&boot_params->kbd_status, 0,
> (char *)&boot_params->hdr -
> (char *)&boot_params->kbd_status);
>
Sounds like ELILO needs to be fixed to pass the boot_params correctly.
To support existing ELILO, it would be good to know exactly *which*
fields ELILO pass in as garbage (because it does, that is why ->sentinel
is nonzero) and use its bootloader ID to apply the proper brainwhack for
the legacy versions.
-hpa
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists