Re: [PATCH] x86, boot: Allow 64bit EFI kernel to be loaded above 4G

From: Yinghai Lu
Date: Wed Feb 18 2015 - 02:22:45 EST


On Tue, Feb 10, 2015 at 10:11 PM, Baoquan He <bhe@xxxxxxxxxx> wrote:
> Hi Yinghai,
>
> Could you please help to have a look at a problem which I encountered?
>
> I am trying to make kaslr randomize on both kernel physical and virtual
> address separately. Now the separate randomization has been done,
> kernel physical address can be randomized to [16M, 4G], and virtual
> address can be randomzed to [16M, 1G]. Below is the post.
> http://thread.gmane.org/gmane.linux.kernel/1870532
>
> Now I am trying to make kernel physical address randomize anywhere, not
> limited to below 4G. As you know in arch/x86/boot/compressed/head_64.S a
> identity mapping of 0~4G has been built, for address above 4G I added an
> IDT and #PF handler. Then I hardcoded the output address of
> choose_kernel_location as 5G, the #PF handler worked, however it will
> reboot in arch/x86/kernel/head_64.S.

For 64bit, I'd like to see bootloader could load kernel to random hw address.

otherwise you will need to set another ident mapping for new range.

Thanks

Yinghai
--
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/