[PATCH] arm64: booting: Require placement within 48-bit addressable memory

Ard Biesheuvel ardb at kernel.org
Wed Nov 30 04:32:15 PST 2022


On Fri, 25 Nov 2022 at 14:24, Will Deacon <will at kernel.org> wrote:
>
> On Tue, 22 Nov 2022 18:02:49 +0100, Ard Biesheuvel wrote:
> > Some configurations (i.e., 64k + LVA/LPA) can tolerate a physical
> > placement of the kernel image outside of the 48-bit addressable region,
> > but given that the loader has no way of knowing whether or not the image
> > in question supports LVA/LPA, it currently has no choice but to place it
> > below the 48-bit mark.
> >
> > Once we add support for LPA2, which allows 52-bit physical and virtual
> > addressing when using 4k or 16k pages, but in way that relies on
> > increasing the number of paging levels, there will be more variety in
> > the configurations that may or may not support this.
> >
> > [...]
>
> Applied to arm64 (for-next/mm), thanks!
>
> [1/1] arm64: booting: Require placement within 48-bit addressable memory
>       https://git.kernel.org/arm64/c/453dfcee70c5
>

In the discussion with Ryan Roberts regarding my LPA2 series, it
became clear that this necessarily applies to the FDT and initrd as
well, given that the bootloader must not assume that the kernel can
access anything residing beyond the 48-bit PA limit.

Unless anyone disagrees with that, I'll prepare a follow up patch to
clarify this too.



More information about the linux-arm-kernel mailing list