This series has some cleanups and small fixes in preparation of the upcoming series that will finally completely move all guest page table handling into kvm. The cleaups and fixes in this series are good enough on their own, hence why they are being sent now. v4->v5 * add missing #include <linux/swap.h> to mm/gmap_helpers.c (thanks kernel test robot) * fix diag_release_pages(), I had accidentally removed the guest absolute to qemu virtual address translation * fix patch subject lines (thanks Heiko) v3->v4 * remove orphaned find_zeropage_ops and find_zeropage_pte_entry() from mm/gmap.c (thanks kernel test robot) * add missing #include <linux/swapops.h> to mm/gmap_helpers.c (thanks kernel test robot) v2->v3 (mainly addresses Nina's and Heiko's comments) * drop patch 3 - it was just an attempt to clean up the code a little and make it more readable, but there were too many issues to address * remove all dead code from s390/mm/gmap.c that is being replaced by code in s390/mm/gmap_helpers.c * remove a couple of unused functions from s390/mm/gmap_helpers.c, some of them will be introduced again in a later series when they are actually needed * added documentation to the functions in s390/mm/gmap_helpers.c * general readability improvements v1->v2 * remove uneeded "gmap.h" include from gaccess.c (thanks Christph) * use a custom helper instead of u64_replace_bits() (thanks Nina) * new helper functions in priv.c to increase readability (thanks Nina) * add lockdep assertion in handle_essa() (thanks Nina) * gmap_helper_disable_cow_sharing() will not take the mmap lock, and must now be called while already holding the mmap lock in write mode Claudio Imbrenda (4): s390: Remove unneeded includes KVM: s390: Remove unneeded srcu lock KVM: s390: Refactor and split some gmap helpers KVM: s390: Simplify and move pv code MAINTAINERS | 2 + arch/s390/include/asm/gmap.h | 2 - arch/s390/include/asm/gmap_helpers.h | 15 ++ arch/s390/include/asm/tlb.h | 1 + arch/s390/include/asm/uv.h | 1 - arch/s390/kernel/uv.c | 12 +- arch/s390/kvm/Makefile | 2 +- arch/s390/kvm/diag.c | 30 +++- arch/s390/kvm/gaccess.c | 3 +- arch/s390/kvm/gmap-vsie.c | 1 - arch/s390/kvm/gmap.c | 121 --------------- arch/s390/kvm/gmap.h | 39 ----- arch/s390/kvm/intercept.c | 9 +- arch/s390/kvm/kvm-s390.c | 10 +- arch/s390/kvm/kvm-s390.h | 42 +++++ arch/s390/kvm/priv.c | 6 +- arch/s390/kvm/pv.c | 61 +++++++- arch/s390/kvm/vsie.c | 19 ++- arch/s390/mm/Makefile | 2 + arch/s390/mm/fault.c | 1 - arch/s390/mm/gmap.c | 185 +--------------------- arch/s390/mm/gmap_helpers.c | 221 +++++++++++++++++++++++++++ arch/s390/mm/init.c | 1 - arch/s390/mm/pgalloc.c | 2 - arch/s390/mm/pgtable.c | 1 - 25 files changed, 410 insertions(+), 379 deletions(-) create mode 100644 arch/s390/include/asm/gmap_helpers.h delete mode 100644 arch/s390/kvm/gmap.c delete mode 100644 arch/s390/kvm/gmap.h create mode 100644 arch/s390/mm/gmap_helpers.c -- 2.49.0