Re: [PATCH v4 4/7] vfio: ap: register IOMMU VFIO notifier
From: Cornelia Huck
Date: Wed Feb 27 2019 - 04:43:01 EST
On Fri, 22 Feb 2019 16:29:57 +0100
Pierre Morel <pmorel@xxxxxxxxxxxxx> wrote:
> To be able to use the VFIO interface to facilitate the
> mediated device memory pining/unpining we need to register
s/pining/pinning/ (unless it's pining for the fjords :)
> a notifier for IOMMU.
>
> Signed-off-by: Pierre Morel <pmorel@xxxxxxxxxxxxx>
> ---
> drivers/s390/crypto/vfio_ap_ops.c | 53 ++++++++++++++++++++++++++++++++---
> drivers/s390/crypto/vfio_ap_private.h | 2 ++
> 2 files changed, 51 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/s390/crypto/vfio_ap_ops.c b/drivers/s390/crypto/vfio_ap_ops.c
> index 172d6eb..1b5130a 100644
> --- a/drivers/s390/crypto/vfio_ap_ops.c
> +++ b/drivers/s390/crypto/vfio_ap_ops.c
> @@ -748,6 +748,36 @@ static const struct attribute_group *vfio_ap_mdev_attr_groups[] = {
> };
>
> /**
> + * vfio_ap_mdev_iommu_notifier: IOMMU notifier callback
> + *
> + * @nb: The notifier block
> + * @action: Action to be taken (VFIO_IOMMU_NOTIFY_DMA_UNMAP)
I'd drop this annotation; you only do something for UNMAP but nothing
prevents the caller from passing in something else :)
> + * @data: the specific unmap structure for vfio_iommu_type1
"data associated with the request" ?
(same reasoning as above)
> + *
> + * Unpins the guest IOVA. (The NIB guest address we pinned before).
> + * Return NOTIFY_OK after unpining on a UNMAP request.
> + * otherwise, returns NOTIFY_DONE .
"For an UNMAP request, unpin the guest IOVA (the NIB guest address we
pinned before). Other requests are ignored."
?
> + */
Looks sane to me.
With comments changed,
Reviewed-by: Cornelia Huck <cohuck@xxxxxxxxxx>