All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] 52-bit userspace VAs
@ 2018-08-29 12:45 Steve Capper
  2018-08-29 12:45 ` [PATCH 1/5] arm64: mm: Introduce DEFAULT_MAP_WINDOW Steve Capper
                   ` (5 more replies)
  0 siblings, 6 replies; 17+ messages in thread
From: Steve Capper @ 2018-08-29 12:45 UTC (permalink / raw)
  To: linux-arm-kernel

This patch series brings support for 52-bit userspace VAs to systems that
have ARMv8.2-LVA and are running with a 48-bit VA_BITS and a 64KB
PAGE_SIZE.

If no hardware support is present, the kernel runs with a 48-bit VA space
for userspace.

Userspace can exploit this feature by providing an address hint to mmap
where addr[51:48] != 0. Otherwise all the VA mappings will behave in the
same way as a 48-bit VA system (this is to maintain compatibility with
software that assumes the maximum VA size on arm64 is 48-bit).

This patch series applies to 4.19-rc1.

Testing was in a model with Trusted Firmware and UEFI for boot.

Steve Capper (5):
  arm64: mm: Introduce DEFAULT_MAP_WINDOW
  arm64: mm: introduce 52-bit userspace support
  arm64: mm: Copy over arch_get_unmapped_area
  arm64: mmap: Allow for "high" 52-bit VA allocations
  arm64: mm: Activate 52-bit userspace VA support

 arch/arm64/Kconfig                      |  4 ++
 arch/arm64/include/asm/assembler.h      |  7 +--
 arch/arm64/include/asm/cpucaps.h        |  3 +-
 arch/arm64/include/asm/elf.h            |  2 +-
 arch/arm64/include/asm/mmu_context.h    |  3 +
 arch/arm64/include/asm/pgalloc.h        |  4 ++
 arch/arm64/include/asm/pgtable.h        | 23 +++++++-
 arch/arm64/include/asm/processor.h      | 19 ++++---
 arch/arm64/kernel/cpufeature.c          | 16 ++++++
 arch/arm64/kernel/entry.S               |  6 +-
 arch/arm64/kernel/head.S                | 13 +++++
 arch/arm64/mm/fault.c                   |  2 +-
 arch/arm64/mm/mmap.c                    | 98 +++++++++++++++++++++++++++++++++
 arch/arm64/mm/mmu.c                     |  1 +
 arch/arm64/mm/proc.S                    | 10 +++-
 drivers/firmware/efi/arm-runtime.c      |  2 +-
 drivers/firmware/efi/libstub/arm-stub.c |  2 +-
 17 files changed, 194 insertions(+), 21 deletions(-)

-- 
2.11.0

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2018-10-17 14:52 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-29 12:45 [PATCH 0/5] 52-bit userspace VAs Steve Capper
2018-08-29 12:45 ` [PATCH 1/5] arm64: mm: Introduce DEFAULT_MAP_WINDOW Steve Capper
2018-08-29 12:45 ` [PATCH 2/5] arm64: mm: introduce 52-bit userspace support Steve Capper
2018-09-21 17:40   ` Catalin Marinas
2018-09-27 13:50     ` Steve Capper
2018-09-27 14:48       ` Steve Capper
2018-10-01 10:28         ` Catalin Marinas
2018-10-01 10:50           ` Steve Capper
2018-08-29 12:45 ` [PATCH 3/5] arm64: mm: Copy over arch_get_unmapped_area Steve Capper
2018-09-07  6:15   ` Jon Masters
2018-09-07 14:04     ` Steve Capper
2018-10-17 14:52       ` Steve Capper
2018-08-29 12:45 ` [PATCH 4/5] arm64: mmap: Allow for "high" 52-bit VA allocations Steve Capper
2018-09-21 17:11   ` Catalin Marinas
2018-08-29 12:45 ` [PATCH 5/5] arm64: mm: Activate 52-bit userspace VA support Steve Capper
2018-09-07  6:22 ` [PATCH 0/5] 52-bit userspace VAs Jon Masters
2018-09-07 13:59   ` Steve Capper

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.