All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v6 00/31] target-arm: Implement ARMv8.5-MemTag, user mode
@ 2021-02-10  0:01 Richard Henderson
  2021-02-10  0:01 ` [PATCH v6 01/31] tcg: Introduce target-specific page data for user-only Richard Henderson
                   ` (32 more replies)
  0 siblings, 33 replies; 36+ messages in thread
From: Richard Henderson @ 2021-02-10  0:01 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell

Changes for v6:
  * Drop the change to probe_access.  The cpu_untagged_addr function
    isn't correct, since that's specifically for syscalls.  The uses
    of probe_access in target/arm/ are already done with clean addresses.
  * Move unlock_user comparison change from p19 to p18.

The only unreviewed patch is 19.


r~


Richard Henderson (31):
  tcg: Introduce target-specific page data for user-only
  linux-user: Introduce PAGE_ANON
  exec: Use uintptr_t for guest_base
  exec: Use uintptr_t in cpu_ldst.h
  exec: Improve types for guest_addr_valid
  linux-user: Check for overflow in access_ok
  linux-user: Tidy VERIFY_READ/VERIFY_WRITE
  bsd-user: Tidy VERIFY_READ/VERIFY_WRITE
  linux-user: Do not use guest_addr_valid for h2g_valid
  linux-user: Fix guest_addr_valid vs reserved_va
  exec: Introduce cpu_untagged_addr
  exec: Use cpu_untagged_addr in g2h; split out g2h_untagged
  linux-user: Explicitly untag memory management syscalls
  linux-user: Use guest_range_valid in access_ok
  exec: Rename guest_{addr,range}_valid to *_untagged
  linux-user: Use cpu_untagged_addr in access_ok; split out *_untagged
  linux-user: Move lock_user et al out of line
  linux-user: Fix types in uaccess.c
  linux-user: Handle tags in lock_user/unlock_user
  linux-user/aarch64: Implement PR_TAGGED_ADDR_ENABLE
  target/arm: Improve gen_top_byte_ignore
  target/arm: Use the proper TBI settings for linux-user
  linux-user/aarch64: Implement PR_MTE_TCF and PR_MTE_TAG
  linux-user/aarch64: Implement PROT_MTE
  target/arm: Split out syndrome.h from internals.h
  linux-user/aarch64: Pass syndrome to EXC_*_ABORT
  linux-user/aarch64: Signal SEGV_MTESERR for sync tag check fault
  linux-user/aarch64: Signal SEGV_MTEAERR for async tag check error
  target/arm: Add allocation tag storage for user mode
  target/arm: Enable MTE for user-only
  tests/tcg/aarch64: Add mte smoke tests

 bsd-user/qemu.h                     |   9 +-
 include/exec/cpu-all.h              |  47 ++++-
 include/exec/cpu_ldst.h             |  39 ++--
 include/exec/exec-all.h             |   2 +-
 linux-user/aarch64/target_signal.h  |   3 +
 linux-user/aarch64/target_syscall.h |  13 ++
 linux-user/qemu.h                   |  76 +++-----
 linux-user/syscall_defs.h           |   1 +
 target/arm/cpu-param.h              |   3 +
 target/arm/cpu.h                    |  32 ++++
 target/arm/internals.h              | 249 +------------------------
 target/arm/syndrome.h               | 273 ++++++++++++++++++++++++++++
 tests/tcg/aarch64/mte.h             |  60 ++++++
 accel/tcg/translate-all.c           |  32 +++-
 accel/tcg/user-exec.c               |  51 +++---
 bsd-user/main.c                     |   4 +-
 linux-user/aarch64/cpu_loop.c       |  38 +++-
 linux-user/elfload.c                |  18 +-
 linux-user/flatload.c               |   2 +-
 linux-user/hppa/cpu_loop.c          |  39 ++--
 linux-user/i386/cpu_loop.c          |   6 +-
 linux-user/i386/signal.c            |   5 +-
 linux-user/main.c                   |   4 +-
 linux-user/mmap.c                   |  86 +++++----
 linux-user/ppc/signal.c             |   4 +-
 linux-user/syscall.c                | 165 +++++++++++++----
 linux-user/uaccess.c                |  82 +++++++--
 target/arm/cpu.c                    |  25 ++-
 target/arm/helper-a64.c             |   4 +-
 target/arm/mte_helper.c             |  39 +++-
 target/arm/tlb_helper.c             |  15 +-
 target/arm/translate-a64.c          |  25 +--
 target/hppa/op_helper.c             |   2 +-
 target/i386/tcg/mem_helper.c        |   2 +-
 target/s390x/mem_helper.c           |   4 +-
 tests/tcg/aarch64/mte-1.c           |  28 +++
 tests/tcg/aarch64/mte-2.c           |  45 +++++
 tests/tcg/aarch64/mte-3.c           |  51 ++++++
 tests/tcg/aarch64/mte-4.c           |  45 +++++
 tests/tcg/aarch64/pauth-2.c         |   1 -
 tests/tcg/aarch64/Makefile.target   |   6 +
 tests/tcg/configure.sh              |   4 +
 42 files changed, 1122 insertions(+), 517 deletions(-)
 create mode 100644 target/arm/syndrome.h
 create mode 100644 tests/tcg/aarch64/mte.h
 create mode 100644 tests/tcg/aarch64/mte-1.c
 create mode 100644 tests/tcg/aarch64/mte-2.c
 create mode 100644 tests/tcg/aarch64/mte-3.c
 create mode 100644 tests/tcg/aarch64/mte-4.c

-- 
2.25.1



^ permalink raw reply	[flat|nested] 36+ messages in thread

end of thread, other threads:[~2021-02-11 20:00 UTC | newest]

Thread overview: 36+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-10  0:01 [PATCH v6 00/31] target-arm: Implement ARMv8.5-MemTag, user mode Richard Henderson
2021-02-10  0:01 ` [PATCH v6 01/31] tcg: Introduce target-specific page data for user-only Richard Henderson
2021-02-10  0:01 ` [PATCH v6 02/31] linux-user: Introduce PAGE_ANON Richard Henderson
2021-02-10  0:01 ` [PATCH v6 03/31] exec: Use uintptr_t for guest_base Richard Henderson
2021-02-10  0:01 ` [PATCH v6 04/31] exec: Use uintptr_t in cpu_ldst.h Richard Henderson
2021-02-10  0:01 ` [PATCH v6 05/31] exec: Improve types for guest_addr_valid Richard Henderson
2021-02-10  0:01 ` [PATCH v6 06/31] linux-user: Check for overflow in access_ok Richard Henderson
2021-02-10  0:01 ` [PATCH v6 07/31] linux-user: Tidy VERIFY_READ/VERIFY_WRITE Richard Henderson
2021-02-10  0:02 ` [PATCH v6 08/31] bsd-user: " Richard Henderson
2021-02-10  0:02 ` [PATCH v6 09/31] linux-user: Do not use guest_addr_valid for h2g_valid Richard Henderson
2021-02-10  0:02 ` [PATCH v6 10/31] linux-user: Fix guest_addr_valid vs reserved_va Richard Henderson
2021-02-10  0:02 ` [PATCH v6 11/31] exec: Introduce cpu_untagged_addr Richard Henderson
2021-02-10  0:02 ` [PATCH v6 12/31] exec: Use cpu_untagged_addr in g2h; split out g2h_untagged Richard Henderson
2021-02-10  0:02 ` [PATCH v6 13/31] linux-user: Explicitly untag memory management syscalls Richard Henderson
2021-02-10  0:02 ` [PATCH v6 14/31] linux-user: Use guest_range_valid in access_ok Richard Henderson
2021-02-10  0:02 ` [PATCH v6 15/31] exec: Rename guest_{addr,range}_valid to *_untagged Richard Henderson
2021-02-10  0:02 ` [PATCH v6 16/31] linux-user: Use cpu_untagged_addr in access_ok; split out *_untagged Richard Henderson
2021-02-10  0:02 ` [PATCH v6 17/31] linux-user: Move lock_user et al out of line Richard Henderson
2021-02-10  0:02 ` [PATCH v6 18/31] linux-user: Fix types in uaccess.c Richard Henderson
2021-02-10  0:02 ` [PATCH v6 19/31] linux-user: Handle tags in lock_user/unlock_user Richard Henderson
2021-02-10 11:05   ` Peter Maydell
2021-02-10  0:02 ` [PATCH v6 20/31] linux-user/aarch64: Implement PR_TAGGED_ADDR_ENABLE Richard Henderson
2021-02-10  0:02 ` [PATCH v6 21/31] target/arm: Improve gen_top_byte_ignore Richard Henderson
2021-02-10  0:02 ` [PATCH v6 22/31] target/arm: Use the proper TBI settings for linux-user Richard Henderson
2021-02-10  0:02 ` [PATCH v6 23/31] linux-user/aarch64: Implement PR_MTE_TCF and PR_MTE_TAG Richard Henderson
2021-02-10  0:02 ` [PATCH v6 24/31] linux-user/aarch64: Implement PROT_MTE Richard Henderson
2021-02-10  0:02 ` [PATCH v6 25/31] target/arm: Split out syndrome.h from internals.h Richard Henderson
2021-02-10  0:02 ` [PATCH v6 26/31] linux-user/aarch64: Pass syndrome to EXC_*_ABORT Richard Henderson
2021-02-10  0:02 ` [PATCH v6 27/31] linux-user/aarch64: Signal SEGV_MTESERR for sync tag check fault Richard Henderson
2021-02-10  0:02 ` [PATCH v6 28/31] linux-user/aarch64: Signal SEGV_MTEAERR for async tag check error Richard Henderson
2021-02-10  0:02 ` [PATCH v6 29/31] target/arm: Add allocation tag storage for user mode Richard Henderson
2021-02-10  0:02 ` [PATCH v6 30/31] target/arm: Enable MTE for user-only Richard Henderson
2021-02-10  0:02 ` [PATCH v6 31/31] tests/tcg/aarch64: Add mte smoke tests Richard Henderson
2021-02-11 10:44 ` [PATCH v6 00/31] target-arm: Implement ARMv8.5-MemTag, user mode Peter Maydell
2021-02-11 19:46   ` Peter Maydell
2021-02-11 11:10 ` no-reply

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.