[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 00/15] accel/tcg: Fix for #360 and other i/o alignment issues
From: |
Richard Henderson |
Subject: |
[PATCH 00/15] accel/tcg: Fix for #360 and other i/o alignment issues |
Date: |
Sat, 19 Jun 2021 10:26:11 -0700 |
Short story is that the first two patches resolve the observed
problem, by completely bypassing quite a lot of code in memory.c.
Longer story is that we should either use that code in memory.c,
or we should bypass it to an even lower level, so that we don't
have multiple locations doing the partial-read assembly thing.
Patch 13 exposes a number of obvious device bugs via make check.
I'm sure there are more in devices that are less well tested.
Patch 15 has an obvious drawback: it breaks the original #360.
But it starts the conversation as to whether the check in memory.c
is in fact broken.
r~
Mark Cave-Ayland (2):
NOTFORMERGE q800: test case for do_unaligned_access issue
accel/tcg: Use byte ops for unaligned loads
Philippe Mathieu-Daudé (1):
accel/tcg: Extract load_helper_unaligned from load_helper
Richard Henderson (12):
accel/tcg: Don't test for watchpoints for code read
accel/tcg: Handle page span access before i/o access
softmmu/memory: Inline memory_region_dispatch_read1
softmmu/memory: Simplify access_with_adjusted_size interface
hw/net/e1000e: Fix size of io operations
hw/net/e1000e: Fix impl.min_access_size
hw/pci-host/q35: Improve blackhole_ops
hw/scsi/megasas: Fix megasas_mmio_ops sizes
hw/scsi/megasas: Improve megasas_queue_ops min_access_size
softmmu/memory: Disallow short writes
softmmu/memory: Support some unaligned access
RFC accel/tcg: Defer some unaligned accesses to memory subsystem
accel/tcg/cputlb.c | 147 +++++++++++++----------------
hw/m68k/q800.c | 131 ++------------------------
hw/net/e1000e.c | 8 +-
hw/pci-host/q35.c | 9 +-
hw/scsi/megasas.c | 6 +-
softmmu/memory.c | 226 +++++++++++++++++++++++++++++++++------------
6 files changed, 251 insertions(+), 276 deletions(-)
--
2.25.1
- [PATCH 00/15] accel/tcg: Fix for #360 and other i/o alignment issues,
Richard Henderson <=
- [PATCH 01/15] NOTFORMERGE q800: test case for do_unaligned_access issue, Richard Henderson, 2021/06/19
- [PATCH 04/15] accel/tcg: Don't test for watchpoints for code read, Richard Henderson, 2021/06/19
- [PATCH 05/15] accel/tcg: Handle page span access before i/o access, Richard Henderson, 2021/06/19
- [PATCH 03/15] accel/tcg: Use byte ops for unaligned loads, Richard Henderson, 2021/06/19
- [PATCH 06/15] softmmu/memory: Inline memory_region_dispatch_read1, Richard Henderson, 2021/06/19
- [PATCH 02/15] accel/tcg: Extract load_helper_unaligned from load_helper, Richard Henderson, 2021/06/19
- [PATCH 08/15] hw/net/e1000e: Fix size of io operations, Richard Henderson, 2021/06/19
- [PATCH 09/15] hw/net/e1000e: Fix impl.min_access_size, Richard Henderson, 2021/06/19