[Qemu-devel] [PATCH v3 0/4] target/arm: Implement ARMv8.5-BTI

Richard Henderson posted 4 patches 5 years, 1 month ago
Failed in applying to current master (apply log)
target/arm/cpu.h                  |  4 ++
linux-user/aarch64/cpu_loop.c     | 14 +++++++
target/arm/cpu64.c                | 20 ++++++++++
target/arm/helper.c               |  2 +-
target/arm/translate-a64.c        |  8 +++-
tests/tcg/aarch64/bti-1.c         | 61 +++++++++++++++++++++++++++++++
tests/tcg/aarch64/bti-crt.inc.c   | 51 ++++++++++++++++++++++++++
tests/tcg/aarch64/Makefile.target |  7 +++-
8 files changed, 164 insertions(+), 3 deletions(-)
create mode 100644 tests/tcg/aarch64/bti-1.c
create mode 100644 tests/tcg/aarch64/bti-crt.inc.c
[Qemu-devel] [PATCH v3 0/4] target/arm: Implement ARMv8.5-BTI
Posted by Richard Henderson 5 years, 1 month ago
One fixup to the set of patches applied to target-arm.next.
One adjustment to what is now patch 3 wrt EXCP_SEMIHOST.


r~


Richard Henderson (4):
  fixup! target/arm: Cache the GP bit for a page in MemTxAttrs
  target/arm: Add x-guarded-pages cpu property for user-only
  linux-user/aarch64: Reset btype for syscalls and signals
  tests/tcg/aarch64: Add bti smoke test

 target/arm/cpu.h                  |  4 ++
 linux-user/aarch64/cpu_loop.c     | 14 +++++++
 target/arm/cpu64.c                | 20 ++++++++++
 target/arm/helper.c               |  2 +-
 target/arm/translate-a64.c        |  8 +++-
 tests/tcg/aarch64/bti-1.c         | 61 +++++++++++++++++++++++++++++++
 tests/tcg/aarch64/bti-crt.inc.c   | 51 ++++++++++++++++++++++++++
 tests/tcg/aarch64/Makefile.target |  7 +++-
 8 files changed, 164 insertions(+), 3 deletions(-)
 create mode 100644 tests/tcg/aarch64/bti-1.c
 create mode 100644 tests/tcg/aarch64/bti-crt.inc.c

-- 
2.17.2


Re: [Qemu-devel] [PATCH v3 0/4] target/arm: Implement ARMv8.5-BTI
Posted by Peter Maydell 5 years ago
On Mon, 4 Feb 2019 at 13:12, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> One fixup to the set of patches applied to target-arm.next.
> One adjustment to what is now patch 3 wrt EXCP_SEMIHOST.
>
>
> r~
>
>
> Richard Henderson (4):
>   fixup! target/arm: Cache the GP bit for a page in MemTxAttrs
>   target/arm: Add x-guarded-pages cpu property for user-only
>   linux-user/aarch64: Reset btype for syscalls and signals
>   tests/tcg/aarch64: Add bti smoke test

I'm pretty sure we talked about this on IRC at some point,
but for the record: I believe the relevent ELF ABI spec docs
are now public that have the changes that describe how ELF
executables are marked up to indicate which parts should be
loaded into guarded pages. The rest of the userspace ABI
is likely to just be a new mmap() flag. So I think we're
better off implementing that (possibly still guarded by
an x- property if it's not finalized yet.)

thanks
-- PMM

Re: [Qemu-devel] [PATCH v3 0/4] target/arm: Implement ARMv8.5-BTI
Posted by Richard Henderson 5 years ago
On 3/26/19 6:57 AM, Peter Maydell wrote:
> I'm pretty sure we talked about this on IRC at some point,
> but for the record: I believe the relevent ELF ABI spec docs
> are now public that have the changes that describe how ELF
> executables are marked up to indicate which parts should be
> loaded into guarded pages. The rest of the userspace ABI
> is likely to just be a new mmap() flag. So I think we're
> better off implementing that (possibly still guarded by
> an x- property if it's not finalized yet.)

We still don't know what the mmap flag will be.

You're right that the elf abi is sufficient to
build statically linked test cases, though, which
is all we wanted here.


r~