Messages in this thread | | | Subject | Re: [PATCH v7 2/4] vfio: ap: register IOMMU VFIO notifier | From | Pierre Morel <> | Date | Tue, 30 Apr 2019 09:59:51 +0200 |
| |
On 29/04/2019 18:07, Halil Pasic wrote: > On Fri, 26 Apr 2019 15:01:26 +0200 > Pierre Morel <pmorel@linux.ibm.com> wrote: > >> @@ -858,7 +887,17 @@ static int vfio_ap_mdev_open(struct mdev_device *mdev) >> return ret; >> } >> >> - return 0; >> + matrix_mdev->iommu_notifier.notifier_call = vfio_ap_mdev_iommu_notifier; >> + events = VFIO_IOMMU_NOTIFY_DMA_UNMAP; >> + ret = vfio_register_notifier(mdev_dev(mdev), VFIO_IOMMU_NOTIFY, >> + &events, &matrix_mdev->iommu_notifier); >> + if (!ret) >> + return ret; >> + >> + vfio_unregister_notifier(mdev_dev(mdev), VFIO_GROUP_NOTIFY, >> + &matrix_mdev->group_notifier); >> + module_put(THIS_MODULE); > > Can you please explain this module_put() here? I don't see anything in > the cover letter.
May be you should have a look at the sources or the original patch series of Tony, there is a try_module_get() at the beginning of open to make sure that the module is not taken away while in use by the guest.
In the case we failed to open the mediated device we let fall the reference.
Regards, Pierre
> > Regards, > Halil > >> + return ret; >> } >
-- Pierre Morel Linux/KVM/QEMU in Böblingen - Germany
| |