The first two patches are modified patches from: [PATCH-for-4.2 v1 0/9] s390x: MMU changes and extensions
This series primarily fixes minor things in the storage key handling code in the MMU and implements fairly reliable reference and change bit handling for TCG. To track the reference and change bit, we have to invalidate TLB entries whenever the storage key is changed by the guest and make sure not TLB entry is writable in case the storage key does not indicate a change already. With this series, the kvm-unit-test "skey" now passes. \o/ v2 -> v3: - Reshuffled patches to avoid a temporary uninitialized return value - Minor updates to patch descriptions - "s390x/tcg: Flush the TLB of all CPUs on SSKE and RRBE" -- Updated comments - "s390x/mmu: Factor out storage key handling" -- Reduce indentation v1 -> v2: - "s390x/tcg: Rework MMU selection for instruction fetches" -- Cleanup return value handling - Added RB's Cc: Alex Bennée <alex.ben...@linaro.org> David Hildenbrand (6): s390x/mmu: Trace the right value if setting/getting the storage key fails s390x/mmu: ASC selection in s390_cpu_get_phys_page_debug() s390x/tcg: Rework MMU selection for instruction fetches s390x/tcg: Flush the TLB of all CPUs on SSKE and RRBE s390x/mmu: Better storage key reference and change bit handling s390x/mmu: Factor out storage key handling target/s390x/cpu.h | 7 ++ target/s390x/helper.c | 5 ++ target/s390x/mem_helper.c | 10 +++ target/s390x/mmu_helper.c | 135 ++++++++++++++++++++++++-------------- 4 files changed, 107 insertions(+), 50 deletions(-) -- 2.21.0