[GIT PULL v2 1/2] ARM: permit relative phys-to-virt alignment of >= 2 MiB

Ard Biesheuvel ardb at kernel.org
Mon Nov 9 02:20:13 EST 2020


On Wed, 28 Oct 2020 at 21:48, Ard Biesheuvel <ardb at kernel.org> wrote:
>
> The following changes since commit 3650b228f83adda7e5ee532e2b90429c03f7b9ec:
>
>   Linux 5.10-rc1 (2020-10-25 15:14:11 -0700)
>
> are available in the Git repository at:
>
>   git://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git tags/arm-p2v-for-v5.11
>
> for you to fetch changes up to 9443076e4330a14ae2c6114307668b98a8293b77:
>
>   ARM: p2v: reduce p2v alignment requirement to 2 MiB (2020-10-28 16:59:43 +0100)
>
> Change since v1 pull request:
> - rebase onto v5.10-rc1
>
> Cc: Russell King <linux+pull at armlinux.org.uk>
> Cc: Nicolas Pitre <nico at fluxnic.net>
> Cc: Linus Walleij <linus.walleij at linaro.org>
>
> ----------------------------------------------------------------
> Implement the necessary changes in the ARM assembler boot code to permit
> the relative alignment of the physical and the virtual addresses of the
> kernel to be as little as 2 MiB, as opposed to the minimum of 16 MiB we
> support today.
>
> Series was posted here, and reviewed by Nicolas Pitre and Linus Walleij:
> https://lore.kernel.org/linux-arm-kernel/20200921154117.757-1-ardb@kernel.org/
>
> ----------------------------------------------------------------
> Ard Biesheuvel (11):
>       ARM: p2v: fix handling of LPAE translation in BE mode
>       ARM: assembler: introduce adr_l, ldr_l and str_l macros
>       ARM: module: add support for place relative relocations
>       ARM: p2v: move patching code to separate assembler source file
>       ARM: p2v: factor out shared loop processing
>       ARM: p2v: factor out BE8 handling
>       ARM: p2v: drop redundant 'type' argument from __pv_stub
>       ARM: p2v: use relative references in patch site arrays
>       ARM: p2v: simplify __fixup_pv_table()
>       ARM: p2v: switch to MOVW for Thumb2 and ARM/LPAE
>       ARM: p2v: reduce p2v alignment requirement to 2 MiB
>
>  arch/arm/Kconfig                 |   2 +-
>  arch/arm/include/asm/assembler.h |  84 ++++++++++++++
>  arch/arm/include/asm/elf.h       |   5 +
>  arch/arm/include/asm/memory.h    |  57 +++++++---
>  arch/arm/kernel/Makefile         |   1 +
>  arch/arm/kernel/head.S           | 142 -----------------------
>  arch/arm/kernel/module.c         |  20 +++-
>  arch/arm/kernel/phys2virt.S      | 238 +++++++++++++++++++++++++++++++++++++++
>  8 files changed, 387 insertions(+), 162 deletions(-)
>  create mode 100644 arch/arm/kernel/phys2virt.S
>

Ping?



More information about the linux-arm-kernel mailing list