This is a split-up of:
[PATCH-for-4.2 v1 3/9] s390x/mmu: DAT translation rewrite
Rebased on latest upstream changes.
v3 -> v4:
- "s390x/mmu: Inject PGM_ADDRESSING on bogus table addresses"
-- s/goguous/bogus/
- "s390x/mmu: DAT table definition overhaul"
-- Fix SEGMENT_ENTRY_SFAA
-- Drop three unnecessary defines
- "s390x/mmu: Convert to non-recursive page table walk"
-- Reorder "REGION_ENTRY_P" checks
-- Drop default cases that cannot be reached
v2 -> v3:
- "s390x/mmu: Inject PGM_ADDRESSING on boguous table addresses"
-- Keep using cs->as
-- Make read_table_entry() return true/false
- "s390x/mmu: DAT table definition overhaul"
-- Added a comment where to find details about s390x and used definitions
v1 -> v2:
- Cleanup old code first, before switching to non-recursive handling
- Fix EDAT1 translation: I was missing the vaddr offset within the 1MB
page.
David Hildenbrand (7):
s390x/mmu: Drop debug logging from MMU code
s390x/mmu: Move DAT protection handling out of mmu_translate_asce()
s390x/mmu: Inject DAT exceptions from a single place
s390x/mmu: Inject PGM_ADDRESSING on bogus table addresses
s390x/mmu: Use TARGET_PAGE_MASK in mmu_translate_pte()
s390x/mmu: DAT table definition overhaul
s390x/mmu: Convert to non-recursive page table walk
target/s390x/cpu.h | 78 +++++---
target/s390x/mem_helper.c | 12 +-
target/s390x/mmu_helper.c | 365 ++++++++++++++++----------------------
3 files changed, 220 insertions(+), 235 deletions(-)
--
2.21.0