[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v7 00/20] linux-user: Fix siginfo_t contents when jumping to non-
From: |
Richard Henderson |
Subject: |
[PATCH v7 00/20] linux-user: Fix siginfo_t contents when jumping to non-readable pages |
Date: |
Tue, 23 Aug 2022 15:05:22 -0700 |
Changes from v6:
* Fix an unintentional behaviour change in patches 8 & 12, which
had inspired the old patches 13 & 14 to fix (removed).
* Added a new documentation patch 13.
r~
Ilya Leoshkevich (4):
linux-user: Clear translations and tb_jmp_cache on mprotect()
accel/tcg: Introduce is_same_page()
target/s390x: Make translator stop before the end of a page
target/i386: Make translator stop before the end of a page
Richard Henderson (16):
linux-user/arm: Mark the commpage executable
linux-user/hppa: Allocate page zero as a commpage
linux-user/x86_64: Allocate vsyscall page as a commpage
linux-user: Honor PT_GNU_STACK
tests/tcg/i386: Move smc_code2 to an executable section
accel/tcg: Properly implement get_page_addr_code for user-only
accel/tcg: Unlock mmap_lock after longjmp
accel/tcg: Make tb_htable_lookup static
accel/tcg: Move qemu_ram_addr_from_host_nofail to physmem.c
accel/tcg: Use probe_access_internal for softmmu
get_page_addr_code_hostp
accel/tcg: Document the faulting lookup in tb_lookup_cmp
accel/tcg: Remove translator_ldsw
accel/tcg: Add pc and host_pc params to gen_intermediate_code
accel/tcg: Add fast path for translator_ld*
target/riscv: Add MAX_INSN_LEN and insn_len
target/riscv: Make translator stop before the end of a page
include/elf.h | 1 +
include/exec/cpu-common.h | 1 +
include/exec/exec-all.h | 89 ++++++-------------
include/exec/translator.h | 96 +++++++++++++-------
linux-user/arm/target_cpu.h | 4 +-
linux-user/qemu.h | 1 +
accel/tcg/cpu-exec.c | 143 ++++++++++++++++--------------
accel/tcg/cputlb.c | 93 ++++++-------------
accel/tcg/translate-all.c | 29 +++---
accel/tcg/translator.c | 135 +++++++++++++++++++++-------
accel/tcg/user-exec.c | 18 +++-
linux-user/elfload.c | 82 +++++++++++++++--
linux-user/mmap.c | 8 ++
softmmu/physmem.c | 12 +++
target/alpha/translate.c | 5 +-
target/arm/translate.c | 5 +-
target/avr/translate.c | 5 +-
target/cris/translate.c | 5 +-
target/hexagon/translate.c | 6 +-
target/hppa/translate.c | 5 +-
target/i386/tcg/translate.c | 71 +++++++++------
target/loongarch/translate.c | 6 +-
target/m68k/translate.c | 5 +-
target/microblaze/translate.c | 5 +-
target/mips/tcg/translate.c | 5 +-
target/nios2/translate.c | 5 +-
target/openrisc/translate.c | 6 +-
target/ppc/translate.c | 5 +-
target/riscv/translate.c | 32 +++++--
target/rx/translate.c | 5 +-
target/s390x/tcg/translate.c | 20 +++--
target/sh4/translate.c | 5 +-
target/sparc/translate.c | 5 +-
target/tricore/translate.c | 6 +-
target/xtensa/translate.c | 6 +-
tests/tcg/i386/test-i386.c | 2 +-
tests/tcg/riscv64/noexec.c | 79 +++++++++++++++++
tests/tcg/s390x/noexec.c | 106 ++++++++++++++++++++++
tests/tcg/x86_64/noexec.c | 75 ++++++++++++++++
tests/tcg/multiarch/noexec.c.inc | 139 +++++++++++++++++++++++++++++
tests/tcg/riscv64/Makefile.target | 1 +
tests/tcg/s390x/Makefile.target | 1 +
tests/tcg/x86_64/Makefile.target | 3 +-
43 files changed, 971 insertions(+), 365 deletions(-)
create mode 100644 tests/tcg/riscv64/noexec.c
create mode 100644 tests/tcg/s390x/noexec.c
create mode 100644 tests/tcg/x86_64/noexec.c
create mode 100644 tests/tcg/multiarch/noexec.c.inc
--
2.34.1
- [PATCH v7 00/20] linux-user: Fix siginfo_t contents when jumping to non-readable pages,
Richard Henderson <=
- [PATCH v7 01/20] linux-user/arm: Mark the commpage executable, Richard Henderson, 2022/08/23
- [PATCH v7 02/20] linux-user/hppa: Allocate page zero as a commpage, Richard Henderson, 2022/08/23
- [PATCH v7 03/20] linux-user/x86_64: Allocate vsyscall page as a commpage, Richard Henderson, 2022/08/23
- [PATCH v7 04/20] linux-user: Honor PT_GNU_STACK, Richard Henderson, 2022/08/23
- [PATCH v7 06/20] tests/tcg/i386: Move smc_code2 to an executable section, Richard Henderson, 2022/08/23
- [PATCH v7 07/20] accel/tcg: Introduce is_same_page(), Richard Henderson, 2022/08/23
- [PATCH v7 05/20] linux-user: Clear translations and tb_jmp_cache on mprotect(), Richard Henderson, 2022/08/23
- [PATCH v7 09/20] accel/tcg: Unlock mmap_lock after longjmp, Richard Henderson, 2022/08/23
- [PATCH v7 10/20] accel/tcg: Make tb_htable_lookup static, Richard Henderson, 2022/08/23