This series is an expansion of a previous patch series entitled 's390/vfio-ap: fix memory leak in mdev remove callback'. It has been renamed because there never really was a memory leak to fix. In addition, reviews of the previous series gave rise to additional changes to the locking mechanisms used to control access to various data elements managed by the vfio_ap device driver. This patch series: 1. Refactors the mdev remove callback to always clean up mdev resources 2. Adds two semaphores to replace wait queue during KVM pointer set/unset 3. Adds a semaphore to control r/w access to PQAP instruction interception handler. Tony Krowiak (3): s390/vfio-ap: clean up mdev resources when remove callback invoked s390/vfio-ap: introduce two new r/w locks to replace wait_queue_head_t s390/vfio-ap: r/w lock for PQAP interception handler function pointer arch/s390/include/asm/kvm_host.h | 6 +- arch/s390/kvm/kvm-s390.c | 1 + arch/s390/kvm/priv.c | 6 +- drivers/s390/crypto/vfio_ap_ops.c | 374 ++++++++++---------------- drivers/s390/crypto/vfio_ap_private.h | 10 +- 5 files changed, 163 insertions(+), 234 deletions(-) -- 2.30.2