mbox series

[0/3] accel/tcg: Fix unaligned stores to s390x low-address-protected lowcore

Message ID 20220711185640.3558813-1-iii@linux.ibm.com (mailing list archive)
Headers show
Series accel/tcg: Fix unaligned stores to s390x low-address-protected lowcore | expand

Message

Ilya Leoshkevich July 11, 2022, 6:56 p.m. UTC
Hi,

I noticed that certain accesses to lowcore incorrectly trigger
protection exceptions. I tracked it down to store_helper_unaligned()
calling tlb_fill() with ranges like [0, 2000).

Patch 1 fixes the issue, patch 2 adds a new MMIO device that enables
writing system tests for s390x, patch 3 adds a system test for this
issue.

Best regards,
Ilya

Ilya Leoshkevich (3):
  accel/tcg: Fix unaligned stores to s390x low-address-protected lowcore
  hw/misc: Add mmio-debug-exit device
  tests/tcg/s390x: Test unaligned accesses to lowcore

 accel/tcg/cputlb.c                      |  8 ++-
 hw/misc/Kconfig                         |  3 +
 hw/misc/debugexit_mmio.c                | 80 +++++++++++++++++++++++++
 hw/misc/meson.build                     |  1 +
 hw/s390x/Kconfig                        |  1 +
 tests/tcg/s390x/Makefile.softmmu-target |  9 +++
 tests/tcg/s390x/unaligned-lowcore.S     | 24 ++++++++
 7 files changed, 123 insertions(+), 3 deletions(-)
 create mode 100644 hw/misc/debugexit_mmio.c
 create mode 100644 tests/tcg/s390x/Makefile.softmmu-target
 create mode 100644 tests/tcg/s390x/unaligned-lowcore.S