[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH for-8.1? 00/24] linux-user: mmap range fixes
From: |
Richard Henderson |
Subject: |
[PATCH for-8.1? 00/24] linux-user: mmap range fixes |
Date: |
Fri, 30 Jun 2023 15:21:35 +0200 |
Supercedes: 20230629080835.71371-1-richard.henderson@linaro.org
While the above should make its way back into 8.0.N, we can do better
than simply avoiding the last page for automatically placed pages.
After this patch set, nothing in linux-user/mmap.c uses "end".
In the process, this fixes a couple of inefficiencies, where we
were probing pages one by one instead of walking the interval tree.
This also passes MJT's hppa fenics-basix test case.
r~
Richard Henderson (24):
linux-user: Use assert in mmap_fork_start
linux-user: Fix formatting of mmap.c
linux-user/strace: Expand struct flags to hold a mask
linux-user: Split TARGET_MAP_* out of syscall_defs.h
linux-user: Split TARGET_PROT_* out of syscall_defs.h
linux-user: Populate more bits in mmap_flags_tbl
accel/tcg: Introduce page_check_range_empty
bsd-user: Use page_check_range_empty for MAP_EXCL
linux-user: Implement MAP_FIXED_NOREPLACE
linux-user: Split out target_to_host_prot
linux-user: Widen target_mmap offset argument to off_t
linux-user: Rewrite target_mprotect
linux-user: Rewrite mmap_frag
accel/tcg: Introduce page_find_range_empty
bsd-user: Use page_find_range_empty for mmap_find_vma_reserved
linux-user: Use page_find_range_empty for mmap_find_vma_reserved
linux-user: Use 'last' instead of 'end' in target_mmap
linux-user: Rewrite mmap_reserve
linux-user: Rename mmap_reserve to mmap_reserve_or_unmap
linux-user: Simplify target_munmap
accel/tcg: Accept more page flags in page_check_range
accel/tcg: Return bool from page_check_range
linux-user: Remove can_passthrough_madvise
linux-user: Simplify target_madvise
bsd-user/qemu.h | 2 +-
include/exec/cpu-all.h | 39 +-
linux-user/aarch64/target_mman.h | 3 +
linux-user/alpha/target_mman.h | 13 +
linux-user/generic/target_mman.h | 58 +++
linux-user/hppa/target_mman.h | 10 +
linux-user/mips/target_mman.h | 13 +
linux-user/mips64/target_mman.h | 2 +-
linux-user/ppc/target_mman.h | 3 +
linux-user/qemu.h | 2 +-
linux-user/sparc/target_mman.h | 4 +
linux-user/syscall_defs.h | 96 +----
linux-user/user-mmap.h | 2 +-
linux-user/xtensa/target_mman.h | 13 +
accel/tcg/user-exec.c | 72 +++-
bsd-user/mmap.c | 49 +--
linux-user/mmap.c | 702 ++++++++++++++++---------------
linux-user/strace.c | 61 +--
linux-user/syscall.c | 22 +-
target/hppa/op_helper.c | 2 +-
target/riscv/vector_helper.c | 2 +-
target/sparc/ldst_helper.c | 2 +-
accel/tcg/ldst_atomicity.c.inc | 4 +-
23 files changed, 638 insertions(+), 538 deletions(-)
--
2.34.1
- [PATCH for-8.1? 00/24] linux-user: mmap range fixes,
Richard Henderson <=
- [PATCH 01/24] linux-user: Use assert in mmap_fork_start, Richard Henderson, 2023/06/30
- [PATCH 02/24] linux-user: Fix formatting of mmap.c, Richard Henderson, 2023/06/30
- [PATCH 06/24] linux-user: Populate more bits in mmap_flags_tbl, Richard Henderson, 2023/06/30
- [PATCH 04/24] linux-user: Split TARGET_MAP_* out of syscall_defs.h, Richard Henderson, 2023/06/30
- [PATCH 07/24] accel/tcg: Introduce page_check_range_empty, Richard Henderson, 2023/06/30
- [PATCH 03/24] linux-user/strace: Expand struct flags to hold a mask, Richard Henderson, 2023/06/30
- [PATCH 05/24] linux-user: Split TARGET_PROT_* out of syscall_defs.h, Richard Henderson, 2023/06/30
- [PATCH 08/24] bsd-user: Use page_check_range_empty for MAP_EXCL, Richard Henderson, 2023/06/30