On Thu, 3 Dec 2020 11:19:07 +0100 Cornelia Huck <cohuck@xxxxxxxxxx> wrote: > > @@ -1095,7 +1106,7 @@ static int vfio_ap_mdev_group_notifier(struct notifier_block *nb, > > matrix_mdev = container_of(nb, struct ap_matrix_mdev, group_notifier); > > > > if (!data) { > > - matrix_mdev->kvm = NULL; > > + vfio_ap_mdev_put_kvm(matrix_mdev); > > Hm. I'm wondering whether you need to hold the maxtrix_dev lock here as > well? In v12 we eventually did come along and patch "s390/vfio-ap: allow hot plug/unplug of AP resources using mdev device" made this a part of a critical section protected by the matrix_dev->lock. IMHO the cleanup should definitely happen with the matrix_dev->lock held. Regards, Halil