Re: [PATCH 0/3] riscv: mm: Use hint address in mmap if available

From: Stefan O'Rear
Date: Mon Jan 29 2024 - 21:05:22 EST


On Mon, Jan 29, 2024, at 7:36 PM, Charlie Jenkins wrote:
> On riscv, mmap currently returns an address from the largest address
> space that can fit entirely inside of the hint address. This makes it
> such that the hint address is almost never returned. This patch raises
> the mappable area up to and including the hint address. This allows mmap
> to often return the hint address, which allows a performance improvement
> over searching for a valid address as well as making the behavior more
> similar to other architectures.

This means that if an application or library opts in to Sv48 support by
passing a nonzero hint, it will lose the benefits of ASLR.

Allowing applications to opt in to a VA space smaller than the
architectural minimum seems like an independently useful feature.
Is there a reason to only add it for riscv64?

-s

> Signed-off-by: Charlie Jenkins <charlie@xxxxxxxxxxxx>
> ---
> Charlie Jenkins (3):
> riscv: mm: Use hint address in mmap if available
> selftests: riscv: Generalize mm selftests
> docs: riscv: Define behavior of mmap
>
> Documentation/arch/riscv/vm-layout.rst | 16 ++--
> arch/riscv/include/asm/processor.h | 21 ++----
> tools/testing/selftests/riscv/mm/mmap_bottomup.c | 20 +----
> tools/testing/selftests/riscv/mm/mmap_default.c | 20 +----
> tools/testing/selftests/riscv/mm/mmap_test.h | 93 +++++++++++++-----------
> 5 files changed, 66 insertions(+), 104 deletions(-)
> ---
> base-commit: 556e2d17cae620d549c5474b1ece053430cd50bc
> change-id: 20240119-use_mmap_hint_address-f9f4b1b6f5f1
> --
> - Charlie
>
>
> _______________________________________________
> linux-riscv mailing list
> linux-riscv@xxxxxxxxxxxxxxxxxxx
> http://lists.infradead.org/mailman/listinfo/linux-riscv