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

Ard Biesheuvel ardb at kernel.org
Tue Nov 22 09:03:42 PST 2022


On Tue, 22 Nov 2022 at 18:02, Ard Biesheuvel <ardb at kernel.org> 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.
>
> So redefine bit #3 in the Image header as 'must be placed within 48-bit
> addressable memory', as this is the current de facto meaning.
>
> Signed-off-by: Ard Biesheuvel <ardb at kernel.org>
> ---

Note that this is a v2 addressing prior feedback from Mark.

>  Documentation/arm64/booting.rst | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/arm64/booting.rst b/Documentation/arm64/booting.rst
> index 8c324ad638de2b27..5a764fabfea821f0 100644
> --- a/Documentation/arm64/booting.rst
> +++ b/Documentation/arm64/booting.rst
> @@ -121,8 +121,9 @@ Header notes:
>                           to the base of DRAM, since memory below it is not
>                           accessible via the linear mapping
>                         1
> -                         2MB aligned base may be anywhere in physical
> -                         memory
> +                         2MB aligned base such that all image_size bytes
> +                         counted from the start of the image are within
> +                         the 48-bit addressable range of physical memory
>    Bits 4-63    Reserved.
>    ============= ===============================================================
>
> --
> 2.35.1
>



More information about the linux-arm-kernel mailing list