linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: steve.capper@arm.com (Steve Capper)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH V2 0/4] 52-bit userspace VAs
Date: Wed, 17 Oct 2018 17:34:55 +0100	[thread overview]
Message-ID: <20181017163459.20175-1-steve.capper@arm.com> (raw)

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-rc7.

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

The major change to V2 of the series is that mm/mmap.c is altered in the
first patch of the series (rather than copied over to arch/arm64).


Steve Capper (4):
  mm: mmap: Allow for "high" userspace addresses
  arm64: mm: Introduce DEFAULT_MAP_WINDOW
  arm64: mm: Define arch_get_mmap_end, arch_get_mmap_base
  arm64: mm: introduce 52-bit userspace support

 arch/arm64/Kconfig                      |  4 ++++
 arch/arm64/include/asm/assembler.h      |  7 +++----
 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        | 16 +++++++++++++---
 arch/arm64/include/asm/processor.h      | 29 ++++++++++++++++++++++-------
 arch/arm64/kernel/head.S                | 13 +++++++++++++
 arch/arm64/mm/fault.c                   |  2 +-
 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 +-
 mm/mmap.c                               | 25 ++++++++++++++++++-------
 14 files changed, 94 insertions(+), 26 deletions(-)

-- 
2.11.0

             reply	other threads:[~2018-10-17 16:34 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-17 16:34 Steve Capper [this message]
2018-10-17 16:34 ` [PATCH V2 1/4] mm: mmap: Allow for "high" userspace addresses Steve Capper
2018-10-17 16:48   ` Matthew Wilcox
2018-10-18 10:35     ` Steve Capper
2018-10-17 16:34 ` [PATCH V2 2/4] arm64: mm: Introduce DEFAULT_MAP_WINDOW Steve Capper
2018-10-18  1:50   ` kbuild test robot
2018-10-18  2:09   ` kbuild test robot
2018-10-18 10:47   ` Steve Capper
2018-10-17 16:34 ` [PATCH V2 3/4] arm64: mm: Define arch_get_mmap_end, arch_get_mmap_base Steve Capper
2018-10-18  2:28   ` kbuild test robot
2018-10-17 16:34 ` [PATCH V2 4/4] arm64: mm: introduce 52-bit userspace support Steve Capper
2018-10-18  2:44   ` kbuild test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20181017163459.20175-1-steve.capper@arm.com \
    --to=steve.capper@arm.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).