[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Issues with Linux loading code
From: |
Vladimir 'φ-coder/phcoder' Serbinenko |
Subject: |
Re: Issues with Linux loading code |
Date: |
Thu, 16 Jun 2011 19:29:18 -0400 |
User-agent: |
Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110606 Iceowl/1.0b2 Icedove/3.1.10 |
On 16.06.2011 17:04, Matthew Garrett wrote:
> I'm currently handling some issues related to the kernel ending up on
> top of used EFI regions on some machines. These seem to be exacerbated
> by some of grub's behaviour. It seems that the kernel will always be
> loaded at GRUB_LINUX_BZIMAGE_ADDR, which is problematic in two cases -
> one being that the kernel can be configured with a different start
> address, and also that the firmware may have put code there that we wish
> to preserve.
>
> At present it doesn't seem possible to indicate to the relocator that if
> there isn't enough space for the decompressed kernel (ie, the init_size
> parameter from the header) at the desired address, it should put the
> kernel somewhere else making sure to adhere to the alignment constraints
> the kernel provides. The load address and the alignment then need to be
> written back into the kernel header.
You would need to add a new argument dont_kill_useless_firmware,
propagate it to EFI and IEEE1275-specific functions and make relocator
ignore the runtime regions if this argument is set. Then if *_addr fails
use *_align.
> Or am I misinterpreting the behaviour of the relocation code?
>
--
Regards
Vladimir 'φ-coder/phcoder' Serbinenko
signature.asc
Description: OpenPGP digital signature