[GIT PULL] arm64 fixes for -rc3

From: Will Deacon
Date: Fri Feb 21 2020 - 11:01:32 EST


Hi Linus,

Please pull these arm64 fixes for -rc3.

It's all straightforward apart from the changes to mmap()/mremap() in
relation to their handling of address arguments from userspace with
non-zero tag bits in the upper byte. The change to brk() is necessary
to fix a nasty user-visible regression in malloc(), but we tightened up
mmap() and mremap() at the same time because they also allow the user to
create virtual aliases by accident. It's much less likely than brk() to
matter in practice, but enforcing the principle of "don't permit the
creation of mappings using tagged addresses" leads to a straightforward
ABI without having to worry about the "but what if a crazy program did
foo?" aspect of things.

That said, this is core code and I know you'd prefer to limit the change
to brk(), so the patch is sitting on top of the branch in case you prefer
not to include it. If you decide to tweak it manually, please can you
update the docs at the same time?

Cheers,

Will

--->8

The following changes since commit d91771848f0ae2eec250a9345926a1a3558fa943:

arm64: time: Replace <linux/clk-provider.h> by <linux/of_clk.h> (2020-02-12 17:26:38 +0000)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git tags/arm64-fixes

for you to fetch changes up to dcde237319e626d1ec3c9d8b7613032f0fd4663a:

mm: Avoid creating virtual address aliases in brk()/mmap()/mremap() (2020-02-20 10:03:14 +0000)

----------------------------------------------------------------
arm64 fixes for -rc3

- Fix regression in malloc() caused by ignored address tags in brk()

- Add missing brackets around argument to untagged_addr() macro

- Fix clang build when using binutils assembler

- Fix silly typo in virtual memory map documentation

----------------------------------------------------------------
Catalin Marinas (1):
mm: Avoid creating virtual address aliases in brk()/mmap()/mremap()

Scott Branden (1):
docs: arm64: fix trivial spelling enought to enough in memory.rst

Vincenzo Frascino (1):
arm64: lse: Fix LSE atomics with LLVM

Will Deacon (1):
arm64: memory: Add missing brackets to untagged_addr() macro

Documentation/arm64/memory.rst | 2 +-
Documentation/arm64/tagged-address-abi.rst | 11 +++++++++--
arch/arm64/include/asm/lse.h | 2 +-
arch/arm64/include/asm/memory.h | 2 +-
mm/mmap.c | 4 ----
mm/mremap.c | 1 -
6 files changed, 12 insertions(+), 10 deletions(-)