All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Gibson <david@gibson.dropbear.id.au>
To: Liu Yi L <yi.l.liu@intel.com>
Cc: alex.williamson@redhat.com, jgg@nvidia.com, hch@lst.de,
	jasowang@redhat.com, joro@8bytes.org, jean-philippe@linaro.org,
	kevin.tian@intel.com, parav@mellanox.com, lkml@metux.net,
	pbonzini@redhat.com, lushenming@huawei.com,
	eric.auger@redhat.com, corbet@lwn.net, ashok.raj@intel.com,
	yi.l.liu@linux.intel.com, jun.j.tian@intel.com, hao.wu@intel.com,
	dave.jiang@intel.com, jacob.jun.pan@linux.intel.com,
	kwankhede@nvidia.com, robin.murphy@arm.com, kvm@vger.kernel.org,
	iommu@lists.linux-foundation.org, dwmw2@infradead.org,
	linux-kernel@vger.kernel.org, baolu.lu@linux.intel.com,
	nicolinc@nvidia.com
Subject: Re: [RFC 08/20] vfio/pci: Add VFIO_DEVICE_BIND_IOMMUFD
Date: Wed, 29 Sep 2021 16:00:54 +1000	[thread overview]
Message-ID: <YVQBFgOa4fQRpwqN@yekko> (raw)
In-Reply-To: <20210919063848.1476776-9-yi.l.liu@intel.com>

[-- Attachment #1: Type: text/plain, Size: 7780 bytes --]

On Sun, Sep 19, 2021 at 02:38:36PM +0800, Liu Yi L wrote:
> This patch adds VFIO_DEVICE_BIND_IOMMUFD for userspace to bind the vfio
> device to an iommufd. No VFIO_DEVICE_UNBIND_IOMMUFD interface is provided
> because it's implicitly done when the device fd is closed.
> 
> In concept a vfio device can be bound to multiple iommufds, each hosting
> a subset of I/O address spaces attached by this device.

I really feel like this many<->many mapping between devices is going
to be super-confusing, and therefore make it really hard to be
confident we have all the rules right for proper isolation.

That's why I was suggesting a concept like endpoints, to break this
into two many<->one relationships.  I'm ok if that isn't visible in
the user API, but I think this is going to be really hard to keep
track of if it isn't explicit somewhere in the internals.

> However as a
> starting point (matching current vfio), only one I/O address space is
> supported per vfio device. It implies one device can only be attached
> to one iommufd at this point.
> 
> Signed-off-by: Liu Yi L <yi.l.liu@intel.com>
> ---
>  drivers/vfio/pci/Kconfig            |  1 +
>  drivers/vfio/pci/vfio_pci.c         | 72 ++++++++++++++++++++++++++++-
>  drivers/vfio/pci/vfio_pci_private.h |  8 ++++
>  include/uapi/linux/vfio.h           | 30 ++++++++++++
>  4 files changed, 110 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/vfio/pci/Kconfig b/drivers/vfio/pci/Kconfig
> index 5e2e1b9a9fd3..3abfb098b4dc 100644
> --- a/drivers/vfio/pci/Kconfig
> +++ b/drivers/vfio/pci/Kconfig
> @@ -5,6 +5,7 @@ config VFIO_PCI
>  	depends on MMU
>  	select VFIO_VIRQFD
>  	select IRQ_BYPASS_MANAGER
> +	select IOMMUFD
>  	help
>  	  Support for the PCI VFIO bus driver.  This is required to make
>  	  use of PCI drivers using the VFIO framework.
> diff --git a/drivers/vfio/pci/vfio_pci.c b/drivers/vfio/pci/vfio_pci.c
> index 145addde983b..20006bb66430 100644
> --- a/drivers/vfio/pci/vfio_pci.c
> +++ b/drivers/vfio/pci/vfio_pci.c
> @@ -552,6 +552,16 @@ static void vfio_pci_release(struct vfio_device *core_vdev)
>  			vdev->req_trigger = NULL;
>  		}
>  		mutex_unlock(&vdev->igate);
> +
> +		mutex_lock(&vdev->videv_lock);
> +		if (vdev->videv) {
> +			struct vfio_iommufd_device *videv = vdev->videv;
> +
> +			vdev->videv = NULL;
> +			iommufd_unbind_device(videv->idev);
> +			kfree(videv);
> +		}
> +		mutex_unlock(&vdev->videv_lock);
>  	}
>  
>  	mutex_unlock(&vdev->reflck->lock);
> @@ -780,7 +790,66 @@ static long vfio_pci_ioctl(struct vfio_device *core_vdev,
>  		container_of(core_vdev, struct vfio_pci_device, vdev);
>  	unsigned long minsz;
>  
> -	if (cmd == VFIO_DEVICE_GET_INFO) {
> +	if (cmd == VFIO_DEVICE_BIND_IOMMUFD) {
> +		struct vfio_device_iommu_bind_data bind_data;
> +		unsigned long minsz;
> +		struct iommufd_device *idev;
> +		struct vfio_iommufd_device *videv;
> +
> +		/*
> +		 * Reject the request if the device is already opened and
> +		 * attached to a container.
> +		 */
> +		if (vfio_device_in_container(core_vdev))

Usually one would do argument sanity checks before checks that
actually depend on machine state.

> +			return -ENOTTY;

This doesn't seem like the right error code.  It's a perfectly valid
operation for this device - just not available right now.

> +
> +		minsz = offsetofend(struct vfio_device_iommu_bind_data, dev_cookie);
> +
> +		if (copy_from_user(&bind_data, (void __user *)arg, minsz))
> +			return -EFAULT;
> +
> +		if (bind_data.argsz < minsz ||
> +		    bind_data.flags || bind_data.iommu_fd < 0)
> +			return -EINVAL;
> +
> +		mutex_lock(&vdev->videv_lock);
> +		/*
> +		 * Allow only one iommufd per device until multiple
> +		 * address spaces (e.g. vSVA) support is introduced
> +		 * in the future.
> +		 */
> +		if (vdev->videv) {
> +			mutex_unlock(&vdev->videv_lock);
> +			return -EBUSY;
> +		}
> +
> +		idev = iommufd_bind_device(bind_data.iommu_fd,
> +					   &vdev->pdev->dev,
> +					   bind_data.dev_cookie);
> +		if (IS_ERR(idev)) {
> +			mutex_unlock(&vdev->videv_lock);
> +			return PTR_ERR(idev);
> +		}
> +
> +		videv = kzalloc(sizeof(*videv), GFP_KERNEL);
> +		if (!videv) {
> +			iommufd_unbind_device(idev);
> +			mutex_unlock(&vdev->videv_lock);
> +			return -ENOMEM;
> +		}
> +		videv->idev = idev;
> +		videv->iommu_fd = bind_data.iommu_fd;
> +		/*
> +		 * A security context has been established. Unblock
> +		 * user access.
> +		 */
> +		if (atomic_read(&vdev->block_access))
> +			atomic_set(&vdev->block_access, 0);
> +		vdev->videv = videv;
> +		mutex_unlock(&vdev->videv_lock);
> +
> +		return 0;
> +	} else if (cmd == VFIO_DEVICE_GET_INFO) {
>  		struct vfio_device_info info;
>  		struct vfio_info_cap caps = { .buf = NULL, .size = 0 };
>  		unsigned long capsz;
> @@ -2031,6 +2100,7 @@ static int vfio_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
>  	mutex_init(&vdev->vma_lock);
>  	INIT_LIST_HEAD(&vdev->vma_list);
>  	init_rwsem(&vdev->memory_lock);
> +	mutex_init(&vdev->videv_lock);
>  
>  	ret = vfio_pci_reflck_attach(vdev);
>  	if (ret)
> diff --git a/drivers/vfio/pci/vfio_pci_private.h b/drivers/vfio/pci/vfio_pci_private.h
> index f12012e30b53..bd784accac35 100644
> --- a/drivers/vfio/pci/vfio_pci_private.h
> +++ b/drivers/vfio/pci/vfio_pci_private.h
> @@ -14,6 +14,7 @@
>  #include <linux/types.h>
>  #include <linux/uuid.h>
>  #include <linux/notifier.h>
> +#include <linux/iommufd.h>
>  
>  #ifndef VFIO_PCI_PRIVATE_H
>  #define VFIO_PCI_PRIVATE_H
> @@ -99,6 +100,11 @@ struct vfio_pci_mmap_vma {
>  	struct list_head	vma_next;
>  };
>  
> +struct vfio_iommufd_device {
> +	struct iommufd_device *idev;

Could this be embedded to avoid multiple layers of pointers?

> +	int iommu_fd;
> +};
> +
>  struct vfio_pci_device {
>  	struct vfio_device	vdev;
>  	struct pci_dev		*pdev;
> @@ -144,6 +150,8 @@ struct vfio_pci_device {
>  	struct list_head	vma_list;
>  	struct rw_semaphore	memory_lock;
>  	atomic_t		block_access;
> +	struct mutex		videv_lock;
> +	struct vfio_iommufd_device *videv;
>  };
>  
>  #define is_intx(vdev) (vdev->irq_type == VFIO_PCI_INTX_IRQ_INDEX)
> diff --git a/include/uapi/linux/vfio.h b/include/uapi/linux/vfio.h
> index ef33ea002b0b..c902abd60339 100644
> --- a/include/uapi/linux/vfio.h
> +++ b/include/uapi/linux/vfio.h
> @@ -190,6 +190,36 @@ struct vfio_group_status {
>  
>  /* --------------- IOCTLs for DEVICE file descriptors --------------- */
>  
> +/*
> + * VFIO_DEVICE_BIND_IOMMUFD - _IOR(VFIO_TYPE, VFIO_BASE + 19,
> + *				struct vfio_device_iommu_bind_data)
> + *
> + * Bind a vfio_device to the specified iommufd
> + *
> + * The user should provide a device cookie when calling this ioctl. The
> + * cookie is later used in iommufd for capability query, iotlb invalidation
> + * and I/O fault handling.
> + *
> + * User is not allowed to access the device before the binding operation
> + * is completed.
> + *
> + * Unbind is automatically conducted when device fd is closed.
> + *
> + * Input parameters:
> + *	- iommu_fd;
> + *	- dev_cookie;
> + *
> + * Return: 0 on success, -errno on failure.
> + */
> +struct vfio_device_iommu_bind_data {
> +	__u32	argsz;
> +	__u32	flags;
> +	__s32	iommu_fd;
> +	__u64	dev_cookie;
> +};
> +
> +#define VFIO_DEVICE_BIND_IOMMUFD	_IO(VFIO_TYPE, VFIO_BASE + 19)
> +
>  /**
>   * VFIO_DEVICE_GET_INFO - _IOR(VFIO_TYPE, VFIO_BASE + 7,
>   *						struct vfio_device_info)

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: David Gibson <david@gibson.dropbear.id.au>
To: Liu Yi L <yi.l.liu@intel.com>
Cc: kvm@vger.kernel.org, jasowang@redhat.com, kwankhede@nvidia.com,
	hch@lst.de, jean-philippe@linaro.org, dave.jiang@intel.com,
	ashok.raj@intel.com, corbet@lwn.net, jgg@nvidia.com,
	kevin.tian@intel.com, parav@mellanox.com,
	alex.williamson@redhat.com, lkml@metux.net, dwmw2@infradead.org,
	jun.j.tian@intel.com, linux-kernel@vger.kernel.org,
	lushenming@huawei.com, iommu@lists.linux-foundation.org,
	pbonzini@redhat.com, robin.murphy@arm.com
Subject: Re: [RFC 08/20] vfio/pci: Add VFIO_DEVICE_BIND_IOMMUFD
Date: Wed, 29 Sep 2021 16:00:54 +1000	[thread overview]
Message-ID: <YVQBFgOa4fQRpwqN@yekko> (raw)
In-Reply-To: <20210919063848.1476776-9-yi.l.liu@intel.com>


[-- Attachment #1.1: Type: text/plain, Size: 7780 bytes --]

On Sun, Sep 19, 2021 at 02:38:36PM +0800, Liu Yi L wrote:
> This patch adds VFIO_DEVICE_BIND_IOMMUFD for userspace to bind the vfio
> device to an iommufd. No VFIO_DEVICE_UNBIND_IOMMUFD interface is provided
> because it's implicitly done when the device fd is closed.
> 
> In concept a vfio device can be bound to multiple iommufds, each hosting
> a subset of I/O address spaces attached by this device.

I really feel like this many<->many mapping between devices is going
to be super-confusing, and therefore make it really hard to be
confident we have all the rules right for proper isolation.

That's why I was suggesting a concept like endpoints, to break this
into two many<->one relationships.  I'm ok if that isn't visible in
the user API, but I think this is going to be really hard to keep
track of if it isn't explicit somewhere in the internals.

> However as a
> starting point (matching current vfio), only one I/O address space is
> supported per vfio device. It implies one device can only be attached
> to one iommufd at this point.
> 
> Signed-off-by: Liu Yi L <yi.l.liu@intel.com>
> ---
>  drivers/vfio/pci/Kconfig            |  1 +
>  drivers/vfio/pci/vfio_pci.c         | 72 ++++++++++++++++++++++++++++-
>  drivers/vfio/pci/vfio_pci_private.h |  8 ++++
>  include/uapi/linux/vfio.h           | 30 ++++++++++++
>  4 files changed, 110 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/vfio/pci/Kconfig b/drivers/vfio/pci/Kconfig
> index 5e2e1b9a9fd3..3abfb098b4dc 100644
> --- a/drivers/vfio/pci/Kconfig
> +++ b/drivers/vfio/pci/Kconfig
> @@ -5,6 +5,7 @@ config VFIO_PCI
>  	depends on MMU
>  	select VFIO_VIRQFD
>  	select IRQ_BYPASS_MANAGER
> +	select IOMMUFD
>  	help
>  	  Support for the PCI VFIO bus driver.  This is required to make
>  	  use of PCI drivers using the VFIO framework.
> diff --git a/drivers/vfio/pci/vfio_pci.c b/drivers/vfio/pci/vfio_pci.c
> index 145addde983b..20006bb66430 100644
> --- a/drivers/vfio/pci/vfio_pci.c
> +++ b/drivers/vfio/pci/vfio_pci.c
> @@ -552,6 +552,16 @@ static void vfio_pci_release(struct vfio_device *core_vdev)
>  			vdev->req_trigger = NULL;
>  		}
>  		mutex_unlock(&vdev->igate);
> +
> +		mutex_lock(&vdev->videv_lock);
> +		if (vdev->videv) {
> +			struct vfio_iommufd_device *videv = vdev->videv;
> +
> +			vdev->videv = NULL;
> +			iommufd_unbind_device(videv->idev);
> +			kfree(videv);
> +		}
> +		mutex_unlock(&vdev->videv_lock);
>  	}
>  
>  	mutex_unlock(&vdev->reflck->lock);
> @@ -780,7 +790,66 @@ static long vfio_pci_ioctl(struct vfio_device *core_vdev,
>  		container_of(core_vdev, struct vfio_pci_device, vdev);
>  	unsigned long minsz;
>  
> -	if (cmd == VFIO_DEVICE_GET_INFO) {
> +	if (cmd == VFIO_DEVICE_BIND_IOMMUFD) {
> +		struct vfio_device_iommu_bind_data bind_data;
> +		unsigned long minsz;
> +		struct iommufd_device *idev;
> +		struct vfio_iommufd_device *videv;
> +
> +		/*
> +		 * Reject the request if the device is already opened and
> +		 * attached to a container.
> +		 */
> +		if (vfio_device_in_container(core_vdev))

Usually one would do argument sanity checks before checks that
actually depend on machine state.

> +			return -ENOTTY;

This doesn't seem like the right error code.  It's a perfectly valid
operation for this device - just not available right now.

> +
> +		minsz = offsetofend(struct vfio_device_iommu_bind_data, dev_cookie);
> +
> +		if (copy_from_user(&bind_data, (void __user *)arg, minsz))
> +			return -EFAULT;
> +
> +		if (bind_data.argsz < minsz ||
> +		    bind_data.flags || bind_data.iommu_fd < 0)
> +			return -EINVAL;
> +
> +		mutex_lock(&vdev->videv_lock);
> +		/*
> +		 * Allow only one iommufd per device until multiple
> +		 * address spaces (e.g. vSVA) support is introduced
> +		 * in the future.
> +		 */
> +		if (vdev->videv) {
> +			mutex_unlock(&vdev->videv_lock);
> +			return -EBUSY;
> +		}
> +
> +		idev = iommufd_bind_device(bind_data.iommu_fd,
> +					   &vdev->pdev->dev,
> +					   bind_data.dev_cookie);
> +		if (IS_ERR(idev)) {
> +			mutex_unlock(&vdev->videv_lock);
> +			return PTR_ERR(idev);
> +		}
> +
> +		videv = kzalloc(sizeof(*videv), GFP_KERNEL);
> +		if (!videv) {
> +			iommufd_unbind_device(idev);
> +			mutex_unlock(&vdev->videv_lock);
> +			return -ENOMEM;
> +		}
> +		videv->idev = idev;
> +		videv->iommu_fd = bind_data.iommu_fd;
> +		/*
> +		 * A security context has been established. Unblock
> +		 * user access.
> +		 */
> +		if (atomic_read(&vdev->block_access))
> +			atomic_set(&vdev->block_access, 0);
> +		vdev->videv = videv;
> +		mutex_unlock(&vdev->videv_lock);
> +
> +		return 0;
> +	} else if (cmd == VFIO_DEVICE_GET_INFO) {
>  		struct vfio_device_info info;
>  		struct vfio_info_cap caps = { .buf = NULL, .size = 0 };
>  		unsigned long capsz;
> @@ -2031,6 +2100,7 @@ static int vfio_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
>  	mutex_init(&vdev->vma_lock);
>  	INIT_LIST_HEAD(&vdev->vma_list);
>  	init_rwsem(&vdev->memory_lock);
> +	mutex_init(&vdev->videv_lock);
>  
>  	ret = vfio_pci_reflck_attach(vdev);
>  	if (ret)
> diff --git a/drivers/vfio/pci/vfio_pci_private.h b/drivers/vfio/pci/vfio_pci_private.h
> index f12012e30b53..bd784accac35 100644
> --- a/drivers/vfio/pci/vfio_pci_private.h
> +++ b/drivers/vfio/pci/vfio_pci_private.h
> @@ -14,6 +14,7 @@
>  #include <linux/types.h>
>  #include <linux/uuid.h>
>  #include <linux/notifier.h>
> +#include <linux/iommufd.h>
>  
>  #ifndef VFIO_PCI_PRIVATE_H
>  #define VFIO_PCI_PRIVATE_H
> @@ -99,6 +100,11 @@ struct vfio_pci_mmap_vma {
>  	struct list_head	vma_next;
>  };
>  
> +struct vfio_iommufd_device {
> +	struct iommufd_device *idev;

Could this be embedded to avoid multiple layers of pointers?

> +	int iommu_fd;
> +};
> +
>  struct vfio_pci_device {
>  	struct vfio_device	vdev;
>  	struct pci_dev		*pdev;
> @@ -144,6 +150,8 @@ struct vfio_pci_device {
>  	struct list_head	vma_list;
>  	struct rw_semaphore	memory_lock;
>  	atomic_t		block_access;
> +	struct mutex		videv_lock;
> +	struct vfio_iommufd_device *videv;
>  };
>  
>  #define is_intx(vdev) (vdev->irq_type == VFIO_PCI_INTX_IRQ_INDEX)
> diff --git a/include/uapi/linux/vfio.h b/include/uapi/linux/vfio.h
> index ef33ea002b0b..c902abd60339 100644
> --- a/include/uapi/linux/vfio.h
> +++ b/include/uapi/linux/vfio.h
> @@ -190,6 +190,36 @@ struct vfio_group_status {
>  
>  /* --------------- IOCTLs for DEVICE file descriptors --------------- */
>  
> +/*
> + * VFIO_DEVICE_BIND_IOMMUFD - _IOR(VFIO_TYPE, VFIO_BASE + 19,
> + *				struct vfio_device_iommu_bind_data)
> + *
> + * Bind a vfio_device to the specified iommufd
> + *
> + * The user should provide a device cookie when calling this ioctl. The
> + * cookie is later used in iommufd for capability query, iotlb invalidation
> + * and I/O fault handling.
> + *
> + * User is not allowed to access the device before the binding operation
> + * is completed.
> + *
> + * Unbind is automatically conducted when device fd is closed.
> + *
> + * Input parameters:
> + *	- iommu_fd;
> + *	- dev_cookie;
> + *
> + * Return: 0 on success, -errno on failure.
> + */
> +struct vfio_device_iommu_bind_data {
> +	__u32	argsz;
> +	__u32	flags;
> +	__s32	iommu_fd;
> +	__u64	dev_cookie;
> +};
> +
> +#define VFIO_DEVICE_BIND_IOMMUFD	_IO(VFIO_TYPE, VFIO_BASE + 19)
> +
>  /**
>   * VFIO_DEVICE_GET_INFO - _IOR(VFIO_TYPE, VFIO_BASE + 7,
>   *						struct vfio_device_info)

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

[-- Attachment #2: Type: text/plain, Size: 156 bytes --]

_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

  parent reply	other threads:[~2021-09-29  6:27 UTC|newest]

Thread overview: 537+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-19  6:38 [RFC 00/20] Introduce /dev/iommu for userspace I/O address space management Liu Yi L
2021-09-19  6:38 ` Liu Yi L
2021-09-19  6:38 ` [RFC 01/20] iommu/iommufd: Add /dev/iommu core Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-21 15:41   ` Jason Gunthorpe
2021-09-21 15:41     ` Jason Gunthorpe via iommu
2021-09-22  1:51     ` Tian, Kevin
2021-09-22  1:51       ` Tian, Kevin
2021-09-22 12:40       ` Jason Gunthorpe
2021-09-22 12:40         ` Jason Gunthorpe via iommu
2021-09-22 13:59         ` Tian, Kevin
2021-09-22 13:59           ` Tian, Kevin
2021-09-22 14:10           ` Jason Gunthorpe
2021-09-22 14:10             ` Jason Gunthorpe via iommu
2021-10-15  9:18     ` Liu, Yi L
2021-10-15  9:18       ` Liu, Yi L
2021-10-15 11:18       ` Jason Gunthorpe
2021-10-15 11:18         ` Jason Gunthorpe via iommu
2021-10-15 11:29         ` Liu, Yi L
2021-10-15 11:29           ` Liu, Yi L
2021-10-19 16:57         ` Jacob Pan
2021-10-19 16:57           ` Jacob Pan
2021-10-19 16:57           ` Jason Gunthorpe
2021-10-19 16:57             ` Jason Gunthorpe via iommu
2021-10-19 17:11             ` Jacob Pan
2021-10-19 17:11               ` Jacob Pan
2021-10-19 17:12               ` Jason Gunthorpe
2021-10-19 17:12                 ` Jason Gunthorpe via iommu
2021-09-19  6:38 ` [RFC 02/20] vfio: Add device class for /dev/vfio/devices Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-21 15:57   ` Jason Gunthorpe
2021-09-21 15:57     ` Jason Gunthorpe via iommu
2021-09-21 23:56     ` Tian, Kevin
2021-09-21 23:56       ` Tian, Kevin
2021-09-22  0:55       ` Jason Gunthorpe
2021-09-22  0:55         ` Jason Gunthorpe via iommu
2021-09-22  1:07         ` Tian, Kevin
2021-09-22  1:07           ` Tian, Kevin
2021-09-22 12:31           ` Jason Gunthorpe
2021-09-22 12:31             ` Jason Gunthorpe via iommu
2021-09-22  3:22         ` Tian, Kevin
2021-09-22  3:22           ` Tian, Kevin
2021-09-22 12:50           ` Jason Gunthorpe
2021-09-22 12:50             ` Jason Gunthorpe via iommu
2021-09-22 14:09             ` Tian, Kevin
2021-09-22 14:09               ` Tian, Kevin
2021-09-21 19:56   ` Alex Williamson
2021-09-21 19:56     ` Alex Williamson
2021-09-22  0:56     ` Tian, Kevin
2021-09-22  0:56       ` Tian, Kevin
2021-09-29  2:08   ` David Gibson
2021-09-29  2:08     ` David Gibson
2021-09-29 19:05     ` Alex Williamson
2021-09-29 19:05       ` Alex Williamson
2021-09-30  2:43       ` David Gibson
2021-09-30  2:43         ` David Gibson
2021-10-20 12:39     ` Liu, Yi L
2021-10-20 12:39       ` Liu, Yi L
2021-09-19  6:38 ` [RFC 03/20] vfio: Add vfio_[un]register_device() Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-21 16:01   ` Jason Gunthorpe
2021-09-21 16:01     ` Jason Gunthorpe via iommu
2021-09-21 23:10     ` Tian, Kevin
2021-09-21 23:10       ` Tian, Kevin
2021-09-22  0:53       ` Jason Gunthorpe
2021-09-22  0:53         ` Jason Gunthorpe via iommu
2021-09-22  0:59         ` Tian, Kevin
2021-09-22  0:59           ` Tian, Kevin
2021-09-22  9:23         ` Tian, Kevin
2021-09-22  9:23           ` Tian, Kevin
2021-09-22 12:22           ` Jason Gunthorpe
2021-09-22 12:22             ` Jason Gunthorpe via iommu
2021-09-22 13:44             ` Tian, Kevin
2021-09-22 13:44               ` Tian, Kevin
2021-09-22 20:10             ` Alex Williamson
2021-09-22 20:10               ` Alex Williamson
2021-09-22 22:34               ` Tian, Kevin
2021-09-22 22:34                 ` Tian, Kevin
2021-09-22 22:45                 ` Alex Williamson
2021-09-22 22:45                   ` Alex Williamson
2021-09-22 23:45                   ` Tian, Kevin
2021-09-22 23:45                     ` Tian, Kevin
2021-09-22 23:52                     ` Jason Gunthorpe
2021-09-22 23:52                       ` Jason Gunthorpe via iommu
2021-09-23  0:38                       ` Tian, Kevin
2021-09-23  0:38                         ` Tian, Kevin
2021-09-22 23:56               ` Jason Gunthorpe
2021-09-22 23:56                 ` Jason Gunthorpe via iommu
2021-09-22  0:54     ` Tian, Kevin
2021-09-22  0:54       ` Tian, Kevin
2021-09-22  1:00       ` Jason Gunthorpe
2021-09-22  1:00         ` Jason Gunthorpe via iommu
2021-09-22  1:02         ` Tian, Kevin
2021-09-22  1:02           ` Tian, Kevin
2021-09-23  7:25         ` Eric Auger
2021-09-23  7:25           ` Eric Auger
2021-09-23 11:44           ` Jason Gunthorpe
2021-09-23 11:44             ` Jason Gunthorpe via iommu
2021-09-29  2:46         ` david
2021-09-29  2:46           ` david
2021-09-29 12:22           ` Jason Gunthorpe
2021-09-29 12:22             ` Jason Gunthorpe via iommu
2021-09-30  2:48             ` david
2021-09-30  2:48               ` david
2021-09-29  2:43   ` David Gibson
2021-09-29  2:43     ` David Gibson
2021-09-29  3:40     ` Tian, Kevin
2021-09-29  3:40       ` Tian, Kevin
2021-09-29  5:30     ` Tian, Kevin
2021-09-29  5:30       ` Tian, Kevin
2021-09-29  7:08       ` Cornelia Huck
2021-09-29  7:08         ` Cornelia Huck
2021-09-29 12:15         ` Jason Gunthorpe via iommu
2021-09-29 12:15           ` Jason Gunthorpe
2021-09-19  6:38 ` [RFC 04/20] iommu: Add iommu_device_get_info interface Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-21 16:19   ` Jason Gunthorpe
2021-09-21 16:19     ` Jason Gunthorpe via iommu
2021-09-22  2:31     ` Lu Baolu
2021-09-22  2:31       ` Lu Baolu
2021-09-22  5:07       ` Christoph Hellwig
2021-09-22  5:07         ` Christoph Hellwig
2021-09-29  2:52   ` David Gibson
2021-09-29  2:52     ` David Gibson
2021-09-29  9:25     ` Lu Baolu
2021-09-29  9:25       ` Lu Baolu
2021-09-29  9:29       ` Lu Baolu
2021-09-29  9:29         ` Lu Baolu
2021-09-19  6:38 ` [RFC 05/20] vfio/pci: Register device to /dev/vfio/devices Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-21 16:40   ` Jason Gunthorpe
2021-09-21 16:40     ` Jason Gunthorpe via iommu
2021-09-21 21:09     ` Alex Williamson
2021-09-21 21:09       ` Alex Williamson
2021-09-21 21:58       ` Jason Gunthorpe
2021-09-21 21:58         ` Jason Gunthorpe via iommu
2021-09-22  1:24         ` Tian, Kevin
2021-09-22  1:24           ` Tian, Kevin
2021-09-22  1:19       ` Tian, Kevin
2021-09-22  1:19         ` Tian, Kevin
2021-09-22 21:17         ` Alex Williamson
2021-09-22 21:17           ` Alex Williamson
2021-09-22 23:49           ` Tian, Kevin
2021-09-22 23:49             ` Tian, Kevin
2021-09-19  6:38 ` [RFC 06/20] iommu: Add iommu_device_init[exit]_user_dma interfaces Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-21 17:09   ` Jason Gunthorpe
2021-09-21 17:09     ` Jason Gunthorpe via iommu
2021-09-22  1:47     ` Tian, Kevin
2021-09-22  1:47       ` Tian, Kevin
2021-09-22 12:39       ` Jason Gunthorpe
2021-09-22 12:39         ` Jason Gunthorpe via iommu
2021-09-22 13:56         ` Tian, Kevin
2021-09-22 13:56           ` Tian, Kevin
2021-09-27  9:42         ` Tian, Kevin
2021-09-27  9:42           ` Tian, Kevin
2021-09-27 11:34           ` Lu Baolu
2021-09-27 11:34             ` Lu Baolu
2021-09-27 13:08             ` Tian, Kevin
2021-09-27 13:08               ` Tian, Kevin
2021-09-27 11:53           ` Jason Gunthorpe
2021-09-27 11:53             ` Jason Gunthorpe via iommu
2021-09-27 13:00             ` Tian, Kevin
2021-09-27 13:00               ` Tian, Kevin
2021-09-27 13:09               ` Jason Gunthorpe
2021-09-27 13:09                 ` Jason Gunthorpe via iommu
2021-09-27 13:32                 ` Tian, Kevin
2021-09-27 14:39                   ` Jason Gunthorpe
2021-09-28  7:13                     ` Tian, Kevin
2021-09-28 11:54                       ` Jason Gunthorpe
2021-09-28 23:59                         ` Tian, Kevin
2021-09-27 19:19                   ` Alex Williamson
2021-09-28  7:43                     ` Tian, Kevin
2021-09-28 16:26                       ` Alex Williamson
2021-09-27 15:09           ` Jason Gunthorpe
2021-09-27 15:09             ` Jason Gunthorpe via iommu
2021-09-28  7:30             ` Tian, Kevin
2021-09-28  7:30               ` Tian, Kevin
2021-09-28 11:57               ` Jason Gunthorpe
2021-09-28 11:57                 ` Jason Gunthorpe via iommu
2021-09-28 13:35                 ` Lu Baolu
2021-09-28 13:35                   ` Lu Baolu
2021-09-28 14:07                   ` Jason Gunthorpe
2021-09-28 14:07                     ` Jason Gunthorpe via iommu
2021-09-29  0:38                     ` Tian, Kevin
2021-09-29  0:38                       ` Tian, Kevin
2021-09-29 12:59                       ` Jason Gunthorpe
2021-09-29 12:59                         ` Jason Gunthorpe via iommu
2021-10-15  1:29                         ` Tian, Kevin
2021-10-15  1:29                           ` Tian, Kevin
2021-10-15 11:09                           ` Jason Gunthorpe
2021-10-15 11:09                             ` Jason Gunthorpe via iommu
2021-10-18  1:52                             ` Tian, Kevin
2021-10-18  1:52                               ` Tian, Kevin
2021-09-29  2:22                     ` Lu Baolu
2021-09-29  2:22                       ` Lu Baolu
2021-09-29  2:29                       ` Tian, Kevin
2021-09-29  2:29                         ` Tian, Kevin
2021-09-29  2:38                         ` Lu Baolu
2021-09-29  2:38                           ` Lu Baolu
2021-09-29  4:55   ` David Gibson
2021-09-29  4:55     ` David Gibson
2021-09-29  5:38     ` Tian, Kevin
2021-09-29  5:38       ` Tian, Kevin
2021-09-29  6:35       ` David Gibson
2021-09-29  6:35         ` David Gibson
2021-09-29  7:31         ` Tian, Kevin
2021-09-29  7:31           ` Tian, Kevin
2021-09-30  3:05           ` David Gibson
2021-09-30  3:05             ` David Gibson
2021-09-29 12:57         ` Jason Gunthorpe
2021-09-29 12:57           ` Jason Gunthorpe via iommu
2021-09-30  3:09           ` David Gibson
2021-09-30  3:09             ` David Gibson
2021-09-30 22:28             ` Jason Gunthorpe
2021-09-30 22:28               ` Jason Gunthorpe via iommu
2021-10-01  3:54               ` David Gibson
2021-10-01  3:54                 ` David Gibson
2021-09-19  6:38 ` [RFC 07/20] iommu/iommufd: Add iommufd_[un]bind_device() Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-21 17:14   ` Jason Gunthorpe
2021-09-21 17:14     ` Jason Gunthorpe via iommu
2021-10-15  9:21     ` Liu, Yi L
2021-10-15  9:21       ` Liu, Yi L
2021-09-29  5:25   ` David Gibson
2021-09-29  5:25     ` David Gibson
2021-09-29 12:24     ` Jason Gunthorpe
2021-09-29 12:24       ` Jason Gunthorpe via iommu
2021-09-30  3:10       ` David Gibson
2021-09-30  3:10         ` David Gibson
2021-10-01 12:43         ` Jason Gunthorpe
2021-10-01 12:43           ` Jason Gunthorpe via iommu
2021-10-07  1:23           ` David Gibson
2021-10-07  1:23             ` David Gibson
2021-10-07 11:35             ` Jason Gunthorpe
2021-10-07 11:35               ` Jason Gunthorpe via iommu
2021-10-11  3:24               ` David Gibson
2021-10-11  3:24                 ` David Gibson
2021-09-19  6:38 ` [RFC 08/20] vfio/pci: Add VFIO_DEVICE_BIND_IOMMUFD Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-19 10:08   ` kernel test robot
2021-09-19 10:08     ` kernel test robot
2021-09-21 17:29   ` Jason Gunthorpe
2021-09-21 17:29     ` Jason Gunthorpe via iommu
2021-09-22 21:01     ` Alex Williamson
2021-09-22 21:01       ` Alex Williamson
2021-09-22 23:01       ` Jason Gunthorpe
2021-09-22 23:01         ` Jason Gunthorpe via iommu
2021-09-29  6:00   ` David Gibson [this message]
2021-09-29  6:00     ` David Gibson
2021-09-29  6:41     ` Tian, Kevin
2021-09-29  6:41       ` Tian, Kevin
2021-09-29 12:28       ` Jason Gunthorpe
2021-09-29 12:28         ` Jason Gunthorpe via iommu
2021-09-29 22:34         ` Tian, Kevin
2021-09-29 22:34           ` Tian, Kevin
2021-09-30  3:12       ` David Gibson
2021-09-30  3:12         ` David Gibson
2021-09-19  6:38 ` [RFC 09/20] iommu: Add page size and address width attributes Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-22 13:42   ` Eric Auger
2021-09-22 13:42     ` Eric Auger
2021-09-22 14:19     ` Tian, Kevin
2021-09-22 14:19       ` Tian, Kevin
2021-09-19  6:38 ` [RFC 10/20] iommu/iommufd: Add IOMMU_DEVICE_GET_INFO Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-21 17:40   ` Jason Gunthorpe
2021-09-21 17:40     ` Jason Gunthorpe via iommu
2021-09-22  3:30     ` Tian, Kevin
2021-09-22  3:30       ` Tian, Kevin
2021-09-22 12:41       ` Jason Gunthorpe
2021-09-22 12:41         ` Jason Gunthorpe via iommu
2021-09-29  6:18         ` david
2021-09-29  6:18           ` david
2021-09-22 21:24   ` Alex Williamson
2021-09-22 21:24     ` Alex Williamson
2021-09-22 23:49     ` Jason Gunthorpe
2021-09-22 23:49       ` Jason Gunthorpe via iommu
2021-09-23  3:10       ` Tian, Kevin
2021-09-23  3:10         ` Tian, Kevin
2021-09-23 10:15         ` Jean-Philippe Brucker
2021-09-23 10:15           ` Jean-Philippe Brucker
2021-09-23 11:27           ` Jason Gunthorpe
2021-09-23 11:27             ` Jason Gunthorpe via iommu
2021-09-23 12:05             ` Tian, Kevin
2021-09-23 12:05               ` Tian, Kevin
2021-09-23 12:22               ` Jason Gunthorpe
2021-09-23 12:22                 ` Jason Gunthorpe via iommu
2021-09-29  8:48                 ` Tian, Kevin
2021-09-29  8:48                   ` Tian, Kevin
2021-09-29 12:36                   ` Jason Gunthorpe
2021-09-29 12:36                     ` Jason Gunthorpe via iommu
2021-09-30  8:30                     ` Tian, Kevin
2021-09-30 10:33                       ` Jean-Philippe Brucker
2021-09-30 22:04                         ` Jason Gunthorpe
2021-10-01  3:28                           ` hch
2021-10-14  8:13                             ` Tian, Kevin
2021-10-14  8:22                               ` hch
2021-10-14  8:29                                 ` Tian, Kevin
2021-10-14  8:01                         ` Tian, Kevin
2021-10-14  9:16                           ` Jean-Philippe Brucker
2021-09-30  8:49                 ` Tian, Kevin
2021-09-30  8:49                   ` Tian, Kevin
2021-09-30 13:43                   ` Lu Baolu
2021-09-30 13:43                     ` Lu Baolu
2021-10-01  3:24                     ` hch
2021-10-01  3:24                       ` hch
2021-09-30 22:08                   ` Jason Gunthorpe
2021-09-30 22:08                     ` Jason Gunthorpe via iommu
2021-09-23 11:36         ` Jason Gunthorpe
2021-09-23 11:36           ` Jason Gunthorpe via iommu
     [not found]       ` <BN9PR11MB5433409DF766AAEF1BB2CF258CA39@BN9PR11MB5433.namprd11.prod.outlook.com>
2021-09-23  3:38         ` Tian, Kevin
2021-09-23  3:38           ` Tian, Kevin
2021-09-23 11:42           ` Jason Gunthorpe
2021-09-23 11:42             ` Jason Gunthorpe via iommu
2021-09-30  9:35             ` Tian, Kevin
2021-09-30  9:35               ` Tian, Kevin
2021-09-30 22:23               ` Jason Gunthorpe
2021-09-30 22:23                 ` Jason Gunthorpe via iommu
2021-10-01  3:30                 ` hch
2021-10-01  3:30                   ` hch
2021-10-14  9:11                 ` Tian, Kevin
2021-10-14  9:11                   ` Tian, Kevin
2021-10-14 15:42                   ` Jason Gunthorpe
2021-10-14 15:42                     ` Jason Gunthorpe via iommu
2021-10-15  1:01                     ` Tian, Kevin
2021-10-15  1:01                       ` Tian, Kevin
     [not found]                     ` <BN9PR11MB543327BB6D58AEF91AD2C9D18CB99@BN9PR11MB5433.namprd11.prod.outlook.com>
2021-10-21  2:26                       ` Tian, Kevin
2021-10-21  2:26                         ` Tian, Kevin
2021-10-21 14:58                         ` Jean-Philippe Brucker
2021-10-21 14:58                           ` Jean-Philippe Brucker
2021-10-21 23:22                           ` Jason Gunthorpe
2021-10-21 23:22                             ` Jason Gunthorpe via iommu
2021-10-22  7:49                             ` Jean-Philippe Brucker
2021-10-22  7:49                               ` Jean-Philippe Brucker
2021-10-25 16:51                               ` Jason Gunthorpe
2021-10-25 16:51                                 ` Jason Gunthorpe via iommu
2021-10-21 23:30                         ` Jason Gunthorpe
2021-10-21 23:30                           ` Jason Gunthorpe via iommu
2021-10-22  3:08                           ` Tian, Kevin
2021-10-22  3:08                             ` Tian, Kevin
2021-10-25 23:34                             ` Jason Gunthorpe
2021-10-25 23:34                               ` Jason Gunthorpe via iommu
2021-10-27  1:42                               ` Tian, Kevin
2021-10-27  1:42                                 ` Tian, Kevin
2021-10-28  2:07                               ` Tian, Kevin
2021-10-28  2:07                                 ` Tian, Kevin
2021-10-29 13:55                                 ` Jason Gunthorpe
2021-10-29 13:55                                   ` Jason Gunthorpe via iommu
2021-09-29  6:23   ` David Gibson
2021-09-29  6:23     ` David Gibson
2021-09-19  6:38 ` [RFC 11/20] iommu/iommufd: Add IOMMU_IOASID_ALLOC/FREE Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-19 11:03   ` kernel test robot
2021-09-19 11:03     ` kernel test robot
2021-09-21 17:44   ` Jason Gunthorpe
2021-09-21 17:44     ` Jason Gunthorpe via iommu
2021-09-22  3:40     ` Tian, Kevin
2021-09-22  3:40       ` Tian, Kevin
2021-09-22 14:09       ` Jason Gunthorpe
2021-09-22 14:09         ` Jason Gunthorpe via iommu
2021-09-23  9:14         ` Tian, Kevin
2021-09-23  9:14           ` Tian, Kevin
2021-09-23 12:06           ` Jason Gunthorpe
2021-09-23 12:06             ` Jason Gunthorpe via iommu
2021-09-23 12:22             ` Tian, Kevin
2021-09-23 12:22               ` Tian, Kevin
2021-09-23 12:31               ` Jason Gunthorpe
2021-09-23 12:31                 ` Jason Gunthorpe via iommu
2021-09-23 12:45                 ` Tian, Kevin
2021-09-23 12:45                   ` Tian, Kevin
2021-09-23 13:01                   ` Jason Gunthorpe
2021-09-23 13:01                     ` Jason Gunthorpe via iommu
2021-09-23 13:20                     ` Tian, Kevin
2021-09-23 13:20                       ` Tian, Kevin
2021-09-23 13:30                       ` Jason Gunthorpe
2021-09-23 13:30                         ` Jason Gunthorpe via iommu
2021-09-23 13:41                         ` Tian, Kevin
2021-09-23 13:41                           ` Tian, Kevin
2021-10-01  6:30               ` david
2021-10-01  6:30                 ` david
2021-10-01  6:26           ` david
2021-10-01  6:26             ` david
2021-10-01  6:19         ` david
2021-10-01  6:19           ` david
2021-10-01 12:25           ` Jason Gunthorpe
2021-10-01 12:25             ` Jason Gunthorpe via iommu
2021-10-02  4:21             ` david
2021-10-02  4:21               ` david
2021-10-02 12:25               ` Jason Gunthorpe
2021-10-02 12:25                 ` Jason Gunthorpe via iommu
2021-10-11  5:37                 ` david
2021-10-11  5:37                   ` david
2021-10-11 17:17                   ` Jason Gunthorpe
2021-10-11 17:17                     ` Jason Gunthorpe via iommu
2021-10-14  4:33                     ` david
2021-10-14  4:33                       ` david
2021-10-14 15:06                       ` Jason Gunthorpe via iommu
2021-10-14 15:06                         ` Jason Gunthorpe
2021-10-18  3:40                         ` david
2021-10-18  3:40                           ` david
2021-10-01  6:15       ` david
2021-10-01  6:15         ` david
2021-09-22 12:51     ` Liu, Yi L
2021-09-22 12:51       ` Liu, Yi L
2021-09-22 13:32       ` Jason Gunthorpe
2021-09-22 13:32         ` Jason Gunthorpe via iommu
2021-09-23  6:26         ` Liu, Yi L
2021-09-23  6:26           ` Liu, Yi L
2021-10-01  6:13     ` David Gibson
2021-10-01  6:13       ` David Gibson
2021-10-01 12:22       ` Jason Gunthorpe
2021-10-01 12:22         ` Jason Gunthorpe via iommu
2021-10-11  6:02         ` David Gibson
2021-10-11  6:02           ` David Gibson
2021-10-11  8:49           ` Jean-Philippe Brucker
2021-10-11  8:49             ` Jean-Philippe Brucker
2021-10-11 23:38             ` Jason Gunthorpe
2021-10-11 23:38               ` Jason Gunthorpe via iommu
2021-10-12  8:33               ` Jean-Philippe Brucker
2021-10-12  8:33                 ` Jean-Philippe Brucker
2021-10-13  7:14                 ` Tian, Kevin
2021-10-13  7:14                   ` Tian, Kevin
2021-10-13  7:07             ` Tian, Kevin
2021-10-13  7:07               ` Tian, Kevin
2021-10-14  4:38             ` David Gibson
2021-10-14  4:38               ` David Gibson
2021-10-11 18:49           ` Jason Gunthorpe
2021-10-11 18:49             ` Jason Gunthorpe via iommu
2021-10-14  4:53             ` David Gibson
2021-10-14  4:53               ` David Gibson
2021-10-14 14:52               ` Jason Gunthorpe
2021-10-14 14:52                 ` Jason Gunthorpe via iommu
2021-10-18  3:50                 ` David Gibson
2021-10-18  3:50                   ` David Gibson
2021-10-18 17:42                   ` Jason Gunthorpe
2021-10-18 17:42                     ` Jason Gunthorpe via iommu
2021-09-22 13:45   ` Jean-Philippe Brucker
2021-09-22 13:45     ` Jean-Philippe Brucker
2021-09-29 10:47     ` Liu, Yi L
2021-09-29 10:47       ` Liu, Yi L
2021-10-01  6:11   ` David Gibson
2021-10-01  6:11     ` David Gibson
2021-10-13  7:00     ` Tian, Kevin
2021-10-13  7:00       ` Tian, Kevin
2021-10-14  5:00       ` David Gibson
2021-10-14  5:00         ` David Gibson
2021-10-14  6:53         ` Tian, Kevin
2021-10-14  6:53           ` Tian, Kevin
2021-10-25  5:05           ` David Gibson
2021-10-25  5:05             ` David Gibson
2021-10-27  2:32             ` Tian, Kevin
2021-10-27  2:32               ` Tian, Kevin
2021-09-19  6:38 ` [RFC 12/20] iommu/iommufd: Add IOMMU_CHECK_EXTENSION Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-21 17:47   ` Jason Gunthorpe
2021-09-21 17:47     ` Jason Gunthorpe via iommu
2021-09-22  3:41     ` Tian, Kevin
2021-09-22  3:41       ` Tian, Kevin
2021-09-22 12:55       ` Jason Gunthorpe
2021-09-22 12:55         ` Jason Gunthorpe via iommu
2021-09-22 14:13         ` Tian, Kevin
2021-09-19  6:38 ` [RFC 13/20] iommu: Extend iommu_at[de]tach_device() for multiple devices group Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-10-14  5:24   ` David Gibson
2021-10-14  5:24     ` David Gibson
2021-10-14  7:06     ` Tian, Kevin
2021-10-14  7:06       ` Tian, Kevin
2021-10-18  3:57       ` David Gibson
2021-10-18  3:57         ` David Gibson
2021-10-18 16:32         ` Jason Gunthorpe
2021-10-18 16:32           ` Jason Gunthorpe via iommu
2021-10-25  5:14           ` David Gibson
2021-10-25  5:14             ` David Gibson
2021-10-25 12:14             ` Jason Gunthorpe
2021-10-25 12:14               ` Jason Gunthorpe via iommu
2021-10-25 13:16               ` David Gibson
2021-10-25 13:16                 ` David Gibson
2021-10-25 23:36                 ` Jason Gunthorpe
2021-10-25 23:36                   ` Jason Gunthorpe via iommu
2021-10-26  9:23                   ` David Gibson
2021-10-26  9:23                     ` David Gibson
2021-09-19  6:38 ` [RFC 14/20] iommu/iommufd: Add iommufd_device_[de]attach_ioasid() Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-21 18:02   ` Jason Gunthorpe
2021-09-21 18:02     ` Jason Gunthorpe via iommu
2021-09-22  3:53     ` Tian, Kevin
2021-09-22  3:53       ` Tian, Kevin
2021-09-22 12:57       ` Jason Gunthorpe
2021-09-22 12:57         ` Jason Gunthorpe via iommu
2021-09-22 14:16         ` Tian, Kevin
2021-09-22 14:16           ` Tian, Kevin
2021-09-19  6:38 ` [RFC 15/20] vfio/pci: Add VFIO_DEVICE_[DE]ATTACH_IOASID Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-21 18:04   ` Jason Gunthorpe
2021-09-21 18:04     ` Jason Gunthorpe via iommu
2021-09-22  3:56     ` Tian, Kevin
2021-09-22  3:56       ` Tian, Kevin
2021-09-22 12:58       ` Jason Gunthorpe
2021-09-22 12:58         ` Jason Gunthorpe via iommu
2021-09-22 14:17         ` Tian, Kevin
2021-09-22 14:17           ` Tian, Kevin
2021-09-19  6:38 ` [RFC 16/20] vfio/type1: Export symbols for dma [un]map code sharing Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-21 18:14   ` Jason Gunthorpe
2021-09-21 18:14     ` Jason Gunthorpe via iommu
2021-09-22  3:57     ` Tian, Kevin
2021-09-22  3:57       ` Tian, Kevin
2021-09-19  6:38 ` [RFC 17/20] iommu/iommufd: Report iova range to userspace Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-19  9:38   ` kernel test robot
2021-09-19 16:41   ` kernel test robot
2021-09-22 14:49   ` Jean-Philippe Brucker
2021-09-22 14:49     ` Jean-Philippe Brucker
2021-09-29 10:44     ` Liu, Yi L
2021-09-29 10:44       ` Liu, Yi L
2021-09-29 12:07       ` Jean-Philippe Brucker
2021-09-29 12:07         ` Jean-Philippe Brucker
2021-09-29 12:31         ` Jason Gunthorpe
2021-09-29 12:31           ` Jason Gunthorpe via iommu
2021-09-19  6:38 ` [RFC 18/20] iommu/iommufd: Add IOMMU_[UN]MAP_DMA on IOASID Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-19 11:53   ` kernel test robot
2021-09-19  6:38 ` [RFC 19/20] iommu/vt-d: Implement device_info iommu_ops callback Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-09-19  6:38 ` [RFC 20/20] Doc: Add documentation for /dev/iommu Liu Yi L
2021-09-19  6:38   ` Liu Yi L
2021-10-29  0:15   ` David Gibson
2021-10-29  0:15     ` David Gibson
2021-10-29 12:44     ` Jason Gunthorpe
2021-10-29 12:44       ` Jason Gunthorpe via iommu
2021-09-19  6:45 ` [RFC 00/20] Introduce /dev/iommu for userspace I/O address space management Liu, Yi L
2021-09-19  6:45   ` Liu, Yi L
2021-09-21 13:45 ` Jason Gunthorpe
2021-09-21 13:45   ` Jason Gunthorpe via iommu
2021-09-22  3:25   ` Liu, Yi L
2021-09-22  3:25     ` Liu, Yi L

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YVQBFgOa4fQRpwqN@yekko \
    --to=david@gibson.dropbear.id.au \
    --cc=alex.williamson@redhat.com \
    --cc=ashok.raj@intel.com \
    --cc=baolu.lu@linux.intel.com \
    --cc=corbet@lwn.net \
    --cc=dave.jiang@intel.com \
    --cc=dwmw2@infradead.org \
    --cc=eric.auger@redhat.com \
    --cc=hao.wu@intel.com \
    --cc=hch@lst.de \
    --cc=iommu@lists.linux-foundation.org \
    --cc=jacob.jun.pan@linux.intel.com \
    --cc=jasowang@redhat.com \
    --cc=jean-philippe@linaro.org \
    --cc=jgg@nvidia.com \
    --cc=joro@8bytes.org \
    --cc=jun.j.tian@intel.com \
    --cc=kevin.tian@intel.com \
    --cc=kvm@vger.kernel.org \
    --cc=kwankhede@nvidia.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lkml@metux.net \
    --cc=lushenming@huawei.com \
    --cc=nicolinc@nvidia.com \
    --cc=parav@mellanox.com \
    --cc=pbonzini@redhat.com \
    --cc=robin.murphy@arm.com \
    --cc=yi.l.liu@intel.com \
    --cc=yi.l.liu@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.