Re: 2.6.39.1 immediately reboots/resets on EFI system

From: Matthew Garrett
Date: Fri Jun 10 2011 - 19:04:15 EST


On Fri, Jun 10, 2011 at 03:58:06PM -0700, Yinghai Lu wrote:

> the problem is : overlapping between kernel code with boot services code.

SHouldn't checking against the iomem resource map avoid that?

> now e820 table that is passed from bootloader do not include boot services code range. and also current boot/head_64.S will not
> try to find usable range for decompressed kernel ( too early )...
>
> So solution will be:
> 1. revert Matthew Garrett's patch, because it breaking unknown good platform.

That's acceptable if we can't find a better solution.

> 2. ask vendor of system that Matthew try to fix to go back fix their firmware. otherwise user have stay with CSM with it.

This isn't an option.

The medium-term fix is to ensure that the bootloaders don't put the
kernel on top of boot services code. The long-term fix is to perform the
SetVirtualAddressMap transition in either the bootloader or the kernel
entry point. But the short-term fix here is to allocate all boot
services regions that don't overlap with the kernel. That'll fix some
number of machines and shouldn't break any existing ones.

--
Matthew Garrett | mjg59@xxxxxxxxxxxxx
--
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/