[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v13 12/22] vfio: Add notifier callback to parent
From: |
Kirti Wankhede |
Subject: |
Re: [Qemu-devel] [PATCH v13 12/22] vfio: Add notifier callback to parent's ops structure of mdev |
Date: |
Wed, 16 Nov 2016 20:47:18 +0530 |
On 11/16/2016 12:07 PM, Dong Jia Shi wrote:
> * Kirti Wankhede <address@hidden> [2016-11-15 20:59:55 +0530]:
>
> Hi Kirti,
>
> [...]
>
>> diff --git a/drivers/vfio/mdev/vfio_mdev.c b/drivers/vfio/mdev/vfio_mdev.c
>> index ffc36758cb84..4fc63db38829 100644
>> --- a/drivers/vfio/mdev/vfio_mdev.c
>> +++ b/drivers/vfio/mdev/vfio_mdev.c
>> @@ -24,6 +24,15 @@
>> #define DRIVER_AUTHOR "NVIDIA Corporation"
>> #define DRIVER_DESC "VFIO based driver for Mediated device"
>>
>> +static int vfio_mdev_notifier(struct notifier_block *nb, unsigned long
>> action,
>> + void *data)
>> +{
>> + struct mdev_device *mdev = container_of(nb, struct mdev_device, nb);
>> + struct parent_device *parent = mdev->parent;
>> +
>> + return parent->ops->notifier(mdev, action, data);
>> +}
>> +
>> static int vfio_mdev_open(void *device_data)
>> {
>> struct mdev_device *mdev = device_data;
>> @@ -36,9 +45,18 @@ static int vfio_mdev_open(void *device_data)
>> if (!try_module_get(THIS_MODULE))
>> return -ENODEV;
>>
>> + if (likely(parent->ops->notifier)) {
>> + mdev->nb.notifier_call = vfio_mdev_notifier;
>> + if (vfio_register_notifier(&mdev->dev, &mdev->nb))
>> + pr_err("Failed to register notifier for mdev\n");
> I think we should just return here if the error value is not -ENOTTY.
>
It might be the case where iommu backend module might not support
.register_notifier(). In that case vfio_register_notifier() returns
-ENOTTY and that should not fail this open() call
Changing it to:
ret = vfio_register_notifier(&mdev->dev, &mdev->nb);
if (ret && (ret != -ENOTTY)) {
pr_err("Failed to register notifier for mdev\n");
module_put(THIS_MODULE);
return ret;
}
Thanks,
Kirti
- Re: [Qemu-devel] [PATCH v13 11/22] vfio iommu: Add blocking notifier to notify DMA_UNMAP, (continued)
- Re: [Qemu-devel] [PATCH v13 11/22] vfio iommu: Add blocking notifier to notify DMA_UNMAP, Alex Williamson, 2016/11/15
- Re: [Qemu-devel] [PATCH v13 11/22] vfio iommu: Add blocking notifier to notify DMA_UNMAP, Alex Williamson, 2016/11/15
- Re: [Qemu-devel] [PATCH v13 11/22] vfio iommu: Add blocking notifier to notify DMA_UNMAP, Kirti Wankhede, 2016/11/15
- Re: [Qemu-devel] [PATCH v13 11/22] vfio iommu: Add blocking notifier to notify DMA_UNMAP, Alex Williamson, 2016/11/15
- Re: [Qemu-devel] [PATCH v13 11/22] vfio iommu: Add blocking notifier to notify DMA_UNMAP, Kirti Wankhede, 2016/11/15
- Re: [Qemu-devel] [PATCH v13 11/22] vfio iommu: Add blocking notifier to notify DMA_UNMAP, Alex Williamson, 2016/11/15
- Re: [Qemu-devel] [PATCH v13 11/22] vfio iommu: Add blocking notifier to notify DMA_UNMAP, Kirti Wankhede, 2016/11/16
[Qemu-devel] [PATCH v13 13/22] vfio: Introduce common function to add capabilities, Kirti Wankhede, 2016/11/15
[Qemu-devel] [PATCH v13 12/22] vfio: Add notifier callback to parent's ops structure of mdev, Kirti Wankhede, 2016/11/15
[Qemu-devel] [PATCH v13 15/22] vfio: Introduce vfio_set_irqs_validate_and_prepare(), Kirti Wankhede, 2016/11/15
[Qemu-devel] [PATCH v13 14/22] vfio_pci: Update vfio_pci to use vfio_info_add_capability(), Kirti Wankhede, 2016/11/15
[Qemu-devel] [PATCH v13 16/22] vfio_pci: Updated to use vfio_set_irqs_validate_and_prepare(), Kirti Wankhede, 2016/11/15
[Qemu-devel] [PATCH v13 17/22] vfio_platform: Updated to use vfio_set_irqs_validate_and_prepare(), Kirti Wankhede, 2016/11/15
[Qemu-devel] [PATCH v13 18/22] vfio: Define device_api strings, Kirti Wankhede, 2016/11/15
[Qemu-devel] [PATCH v13 19/22] docs: Add Documentation for Mediated devices, Kirti Wankhede, 2016/11/15
[Qemu-devel] [PATCH v13 20/22] docs: Sysfs ABI for mediated device framework, Kirti Wankhede, 2016/11/15
[Qemu-devel] [PATCH v13 21/22] docs: Sample driver to demonstrate how to use Mediated device framework., Kirti Wankhede, 2016/11/15
[Qemu-devel] [PATCH v13 22/22] MAINTAINERS: Add entry VFIO based Mediated device drivers, Kirti Wankhede, 2016/11/15