[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 0/2] target/arm: Fix unaligned mte checks
From: |
Richard Henderson |
Subject: |
[PATCH 0/2] target/arm: Fix unaligned mte checks |
Date: |
Thu, 1 Apr 2021 22:37:26 -0700 |
I was incorrectly assuming that only the first byte of an MTE access
is checked against the tags. But per the ARM, unaligned accesses are
pre-decomposed into single-byte accesses. So by the time we reach the
actual MTE check in the ARM pseudocode, all accesses are aligned.
There's probably more that could be simplified here, but I did try to
keep the patch small-ish.
r~
Richare Henderson (2):
target/arm: Check PAGE_WRITE_ORG for MTE writeability
target/arm: Fix unaligned mte checks
target/arm/helper-a64.h | 3 +-
target/arm/internals.h | 13 +--
target/arm/translate-a64.h | 2 +-
target/arm/mte_helper.c | 171 ++++++++++++------------------
target/arm/sve_helper.c | 96 ++++++-----------
target/arm/translate-a64.c | 52 ++++-----
target/arm/translate-sve.c | 9 +-
tests/tcg/aarch64/mte-5.c | 44 ++++++++
tests/tcg/aarch64/Makefile.target | 2 +-
9 files changed, 179 insertions(+), 213 deletions(-)
create mode 100644 tests/tcg/aarch64/mte-5.c
--
2.25.1
- [PATCH 0/2] target/arm: Fix unaligned mte checks,
Richard Henderson <=