Re: [PATCH] s390/vfio-ap: Clean up vfio_ap resources when KVM pointer invalidated

From: Tony Krowiak
Date: Thu Dec 03 2020 - 14:15:53 EST




On 12/3/20 12:01 PM, Halil Pasic wrote:
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.

Agreed!


Regards,
Halil