iommu.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
From: Liu Yi L <yi.l.liu@intel.com>
To: alex.williamson@redhat.com, jgg@nvidia.com, hch@lst.de,
	jasowang@redhat.com, joro@8bytes.org
Cc: kvm@vger.kernel.org, kwankhede@nvidia.com,
	jean-philippe@linaro.org, dave.jiang@intel.com,
	ashok.raj@intel.com, corbet@lwn.net, kevin.tian@intel.com,
	parav@mellanox.com, lkml@metux.net, david@gibson.dropbear.id.au,
	robin.murphy@arm.com, jun.j.tian@intel.com,
	linux-kernel@vger.kernel.org, lushenming@huawei.com,
	iommu@lists.linux-foundation.org, pbonzini@redhat.com,
	dwmw2@infradead.org
Subject: [RFC 01/20] iommu/iommufd: Add /dev/iommu core
Date: Sun, 19 Sep 2021 14:38:29 +0800	[thread overview]
Message-ID: <20210919063848.1476776-2-yi.l.liu@intel.com> (raw)
In-Reply-To: <20210919063848.1476776-1-yi.l.liu@intel.com>

/dev/iommu aims to provide a unified interface for managing I/O address
spaces for devices assigned to userspace. This patch adds the initial
framework to create a /dev/iommu node. Each open of this node returns an
iommufd. And this fd is the handle for userspace to initiate its I/O
address space management.

One open:
- We call this feature as IOMMUFD in Kconfig in this RFC. However this
  name is not clear enough to indicate its purpose to user. Back to 2010
  vfio even introduced a /dev/uiommu [1] as the predecessor of its
  container concept. Is that a better name? Appreciate opinions here.

[1] https://lore.kernel.org/kvm/4c0eb470.1HMjondO00NIvFM6%25pugs@cisco.com/

Signed-off-by: Liu Yi L <yi.l.liu@intel.com>
---
 drivers/iommu/Kconfig           |   1 +
 drivers/iommu/Makefile          |   1 +
 drivers/iommu/iommufd/Kconfig   |  11 ++++
 drivers/iommu/iommufd/Makefile  |   2 +
 drivers/iommu/iommufd/iommufd.c | 112 ++++++++++++++++++++++++++++++++
 5 files changed, 127 insertions(+)
 create mode 100644 drivers/iommu/iommufd/Kconfig
 create mode 100644 drivers/iommu/iommufd/Makefile
 create mode 100644 drivers/iommu/iommufd/iommufd.c

diff --git a/drivers/iommu/Kconfig b/drivers/iommu/Kconfig
index 07b7c25cbed8..a83ce0acd09d 100644
--- a/drivers/iommu/Kconfig
+++ b/drivers/iommu/Kconfig
@@ -136,6 +136,7 @@ config MSM_IOMMU
 
 source "drivers/iommu/amd/Kconfig"
 source "drivers/iommu/intel/Kconfig"
+source "drivers/iommu/iommufd/Kconfig"
 
 config IRQ_REMAP
 	bool "Support for Interrupt Remapping"
diff --git a/drivers/iommu/Makefile b/drivers/iommu/Makefile
index c0fb0ba88143..719c799f23ad 100644
--- a/drivers/iommu/Makefile
+++ b/drivers/iommu/Makefile
@@ -29,3 +29,4 @@ obj-$(CONFIG_HYPERV_IOMMU) += hyperv-iommu.o
 obj-$(CONFIG_VIRTIO_IOMMU) += virtio-iommu.o
 obj-$(CONFIG_IOMMU_SVA_LIB) += iommu-sva-lib.o io-pgfault.o
 obj-$(CONFIG_SPRD_IOMMU) += sprd-iommu.o
+obj-$(CONFIG_IOMMUFD) += iommufd/
diff --git a/drivers/iommu/iommufd/Kconfig b/drivers/iommu/iommufd/Kconfig
new file mode 100644
index 000000000000..9fb7769a815d
--- /dev/null
+++ b/drivers/iommu/iommufd/Kconfig
@@ -0,0 +1,11 @@
+# SPDX-License-Identifier: GPL-2.0-only
+config IOMMUFD
+	tristate "I/O Address Space management framework for passthrough devices"
+	select IOMMU_API
+	default n
+	help
+	  provides unified I/O address space management framework for
+	  isolating untrusted DMAs via devices which are passed through
+	  to userspace drivers.
+
+	  If you don't know what to do here, say N.
diff --git a/drivers/iommu/iommufd/Makefile b/drivers/iommu/iommufd/Makefile
new file mode 100644
index 000000000000..54381a01d003
--- /dev/null
+++ b/drivers/iommu/iommufd/Makefile
@@ -0,0 +1,2 @@
+# SPDX-License-Identifier: GPL-2.0-only
+obj-$(CONFIG_IOMMUFD) += iommufd.o
diff --git a/drivers/iommu/iommufd/iommufd.c b/drivers/iommu/iommufd/iommufd.c
new file mode 100644
index 000000000000..710b7e62988b
--- /dev/null
+++ b/drivers/iommu/iommufd/iommufd.c
@@ -0,0 +1,112 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/*
+ * I/O Address Space Management for passthrough devices
+ *
+ * Copyright (C) 2021 Intel Corporation
+ *
+ * Author: Liu Yi L <yi.l.liu@intel.com>
+ */
+
+#define pr_fmt(fmt)    "iommufd: " fmt
+
+#include <linux/file.h>
+#include <linux/fs.h>
+#include <linux/module.h>
+#include <linux/slab.h>
+#include <linux/miscdevice.h>
+#include <linux/mutex.h>
+#include <linux/iommu.h>
+
+/* Per iommufd */
+struct iommufd_ctx {
+	refcount_t refs;
+};
+
+static int iommufd_fops_open(struct inode *inode, struct file *filep)
+{
+	struct iommufd_ctx *ictx;
+	int ret = 0;
+
+	ictx = kzalloc(sizeof(*ictx), GFP_KERNEL);
+	if (!ictx)
+		return -ENOMEM;
+
+	refcount_set(&ictx->refs, 1);
+	filep->private_data = ictx;
+
+	return ret;
+}
+
+static void iommufd_ctx_put(struct iommufd_ctx *ictx)
+{
+	if (refcount_dec_and_test(&ictx->refs))
+		kfree(ictx);
+}
+
+static int iommufd_fops_release(struct inode *inode, struct file *filep)
+{
+	struct iommufd_ctx *ictx = filep->private_data;
+
+	filep->private_data = NULL;
+
+	iommufd_ctx_put(ictx);
+
+	return 0;
+}
+
+static long iommufd_fops_unl_ioctl(struct file *filep,
+				   unsigned int cmd, unsigned long arg)
+{
+	struct iommufd_ctx *ictx = filep->private_data;
+	long ret = -EINVAL;
+
+	if (!ictx)
+		return ret;
+
+	switch (cmd) {
+	default:
+		pr_err_ratelimited("unsupported cmd %u\n", cmd);
+		break;
+	}
+	return ret;
+}
+
+static const struct file_operations iommufd_fops = {
+	.owner		= THIS_MODULE,
+	.open		= iommufd_fops_open,
+	.release	= iommufd_fops_release,
+	.unlocked_ioctl	= iommufd_fops_unl_ioctl,
+};
+
+static struct miscdevice iommu_misc_dev = {
+	.minor = MISC_DYNAMIC_MINOR,
+	.name = "iommu",
+	.fops = &iommufd_fops,
+	.nodename = "iommu",
+	.mode = 0666,
+};
+
+static int __init iommufd_init(void)
+{
+	int ret;
+
+	ret = misc_register(&iommu_misc_dev);
+	if (ret) {
+		pr_err("failed to register misc device\n");
+		return ret;
+	}
+
+	return 0;
+}
+
+static void __exit iommufd_exit(void)
+{
+	misc_deregister(&iommu_misc_dev);
+}
+
+module_init(iommufd_init);
+module_exit(iommufd_exit);
+
+MODULE_AUTHOR("Liu Yi L <yi.l.liu@intel.com>");
+MODULE_DESCRIPTION("I/O Address Space Management for passthrough devices");
+MODULE_LICENSE("GPL v2");
-- 
2.25.1

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

  reply	other threads:[~2021-09-19  6:41 UTC|newest]

Thread overview: 256+ 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 [this message]
2021-09-21 15:41   ` [RFC 01/20] iommu/iommufd: Add /dev/iommu core Jason Gunthorpe via iommu
2021-09-22  1:51     ` Tian, Kevin
2021-09-22 12:40       ` Jason Gunthorpe via iommu
2021-09-22 13:59         ` Tian, Kevin
2021-09-22 14:10           ` Jason Gunthorpe via iommu
2021-10-15  9:18     ` Liu, Yi L
2021-10-15 11:18       ` Jason Gunthorpe via iommu
2021-10-15 11:29         ` Liu, Yi L
2021-10-19 16:57         ` Jacob Pan
2021-10-19 16:57           ` Jason Gunthorpe via iommu
2021-10-19 17:11             ` Jacob Pan
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-21 15:57   ` Jason Gunthorpe via iommu
2021-09-21 23:56     ` Tian, Kevin
2021-09-22  0:55       ` Jason Gunthorpe via iommu
2021-09-22  1:07         ` Tian, Kevin
2021-09-22 12:31           ` Jason Gunthorpe via iommu
2021-09-22  3:22         ` Tian, Kevin
2021-09-22 12:50           ` Jason Gunthorpe via iommu
2021-09-22 14:09             ` Tian, Kevin
2021-09-21 19:56   ` Alex Williamson
2021-09-22  0:56     ` Tian, Kevin
2021-09-29  2:08   ` David Gibson
2021-09-29 19:05     ` Alex Williamson
2021-09-30  2:43       ` David Gibson
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-21 16:01   ` Jason Gunthorpe via iommu
2021-09-21 23:10     ` Tian, Kevin
2021-09-22  0:53       ` Jason Gunthorpe via iommu
2021-09-22  0:59         ` Tian, Kevin
2021-09-22  9:23         ` Tian, Kevin
2021-09-22 12:22           ` Jason Gunthorpe via iommu
2021-09-22 13:44             ` Tian, Kevin
2021-09-22 20:10             ` Alex Williamson
2021-09-22 22:34               ` Tian, Kevin
2021-09-22 22:45                 ` Alex Williamson
2021-09-22 23:45                   ` Tian, Kevin
2021-09-22 23:52                     ` Jason Gunthorpe via iommu
2021-09-23  0:38                       ` Tian, Kevin
2021-09-22 23:56               ` Jason Gunthorpe via iommu
2021-09-22  0:54     ` Tian, Kevin
2021-09-22  1:00       ` Jason Gunthorpe via iommu
2021-09-22  1:02         ` Tian, Kevin
2021-09-23  7:25         ` Eric Auger
2021-09-23 11:44           ` Jason Gunthorpe via iommu
2021-09-29  2:46         ` david
2021-09-29 12:22           ` Jason Gunthorpe via iommu
2021-09-30  2:48             ` david
2021-09-29  2:43   ` David Gibson
2021-09-29  3:40     ` Tian, Kevin
2021-09-29  5:30     ` Tian, Kevin
2021-09-29  7:08       ` Cornelia Huck
2021-09-29 12:15         ` Jason Gunthorpe via iommu
2021-09-19  6:38 ` [RFC 04/20] iommu: Add iommu_device_get_info interface Liu Yi L
2021-09-21 16:19   ` Jason Gunthorpe via iommu
2021-09-22  2:31     ` Lu Baolu
2021-09-22  5:07       ` Christoph Hellwig
2021-09-29  2:52   ` David Gibson
2021-09-29  9:25     ` 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-21 16:40   ` Jason Gunthorpe via iommu
2021-09-21 21:09     ` Alex Williamson
2021-09-21 21:58       ` Jason Gunthorpe via iommu
2021-09-22  1:24         ` Tian, Kevin
2021-09-22  1:19       ` Tian, Kevin
2021-09-22 21:17         ` Alex Williamson
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-21 17:09   ` Jason Gunthorpe via iommu
2021-09-22  1:47     ` Tian, Kevin
2021-09-22 12:39       ` Jason Gunthorpe via iommu
2021-09-22 13:56         ` Tian, Kevin
2021-09-27  9:42         ` Tian, Kevin
2021-09-27 11:34           ` Lu Baolu
2021-09-27 13:08             ` Tian, Kevin
2021-09-27 11:53           ` Jason Gunthorpe via iommu
2021-09-27 13:00             ` Tian, Kevin
2021-09-27 13:09               ` Jason Gunthorpe via iommu
2021-09-27 15:09           ` Jason Gunthorpe via iommu
2021-09-28  7:30             ` Tian, Kevin
2021-09-28 11:57               ` Jason Gunthorpe via iommu
2021-09-28 13:35                 ` Lu Baolu
2021-09-28 14:07                   ` Jason Gunthorpe via iommu
2021-09-29  0:38                     ` Tian, Kevin
2021-09-29 12:59                       ` Jason Gunthorpe via iommu
2021-10-15  1:29                         ` Tian, Kevin
2021-10-15 11:09                           ` Jason Gunthorpe via iommu
2021-10-18  1:52                             ` Tian, Kevin
2021-09-29  2:22                     ` Lu Baolu
2021-09-29  2:29                       ` Tian, Kevin
2021-09-29  2:38                         ` Lu Baolu
2021-09-29  4:55   ` David Gibson
2021-09-29  5:38     ` Tian, Kevin
2021-09-29  6:35       ` David Gibson
2021-09-29  7:31         ` Tian, Kevin
2021-09-30  3:05           ` David Gibson
2021-09-29 12:57         ` Jason Gunthorpe via iommu
2021-09-30  3:09           ` David Gibson
2021-09-30 22:28             ` Jason Gunthorpe via iommu
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-21 17:14   ` Jason Gunthorpe via iommu
2021-10-15  9:21     ` Liu, Yi L
2021-09-29  5:25   ` David Gibson
2021-09-29 12:24     ` Jason Gunthorpe via iommu
2021-09-30  3:10       ` David Gibson
2021-10-01 12:43         ` Jason Gunthorpe via iommu
2021-10-07  1:23           ` David Gibson
2021-10-07 11:35             ` Jason Gunthorpe via iommu
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-21 17:29   ` Jason Gunthorpe via iommu
2021-09-22 21:01     ` Alex Williamson
2021-09-22 23:01       ` Jason Gunthorpe via iommu
2021-09-29  6:00   ` David Gibson
2021-09-29  6:41     ` Tian, Kevin
2021-09-29 12:28       ` Jason Gunthorpe via iommu
2021-09-29 22:34         ` Tian, Kevin
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-22 13:42   ` Eric Auger
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-21 17:40   ` Jason Gunthorpe via iommu
2021-09-22  3:30     ` Tian, Kevin
2021-09-22 12:41       ` Jason Gunthorpe via iommu
2021-09-29  6:18         ` david
2021-09-22 21:24   ` Alex Williamson
2021-09-22 23:49     ` Jason Gunthorpe via iommu
2021-09-23  3:10       ` Tian, Kevin
2021-09-23 10:15         ` Jean-Philippe Brucker
2021-09-23 11:27           ` Jason Gunthorpe via iommu
2021-09-23 12:05             ` Tian, Kevin
2021-09-23 12:22               ` Jason Gunthorpe via iommu
2021-09-29  8:48                 ` Tian, Kevin
2021-09-29 12:36                   ` Jason Gunthorpe via iommu
2021-09-30  8:49                 ` Tian, Kevin
2021-09-30 13:43                   ` Lu Baolu
2021-10-01  3:24                     ` hch
2021-09-30 22:08                   ` Jason Gunthorpe via iommu
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 11:42           ` Jason Gunthorpe via iommu
2021-09-30  9:35             ` Tian, Kevin
2021-09-30 22:23               ` Jason Gunthorpe via iommu
2021-10-01  3:30                 ` hch
2021-10-14  9:11                 ` Tian, Kevin
2021-10-14 15:42                   ` Jason Gunthorpe via iommu
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 14:58                         ` Jean-Philippe Brucker
2021-10-21 23:22                           ` Jason Gunthorpe via iommu
2021-10-22  7:49                             ` Jean-Philippe Brucker
2021-10-25 16:51                               ` Jason Gunthorpe via iommu
2021-10-21 23:30                         ` Jason Gunthorpe via iommu
2021-10-22  3:08                           ` Tian, Kevin
2021-10-25 23:34                             ` Jason Gunthorpe via iommu
2021-10-27  1:42                               ` Tian, Kevin
2021-10-28  2:07                               ` Tian, Kevin
2021-10-29 13:55                                 ` Jason Gunthorpe via iommu
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-21 17:44   ` Jason Gunthorpe via iommu
2021-09-22  3:40     ` Tian, Kevin
2021-09-22 14:09       ` Jason Gunthorpe via iommu
2021-09-23  9:14         ` Tian, Kevin
2021-09-23 12:06           ` Jason Gunthorpe via iommu
2021-09-23 12:22             ` Tian, Kevin
2021-09-23 12:31               ` Jason Gunthorpe via iommu
2021-09-23 12:45                 ` Tian, Kevin
2021-09-23 13:01                   ` Jason Gunthorpe via iommu
2021-09-23 13:20                     ` Tian, Kevin
2021-09-23 13:30                       ` Jason Gunthorpe via iommu
2021-09-23 13:41                         ` Tian, Kevin
2021-10-01  6:30               ` david
2021-10-01  6:26           ` david
2021-10-01  6:19         ` david
2021-10-01 12:25           ` Jason Gunthorpe via iommu
2021-10-02  4:21             ` david
2021-10-02 12:25               ` Jason Gunthorpe via iommu
2021-10-11  5:37                 ` david
2021-10-11 17:17                   ` Jason Gunthorpe via iommu
2021-10-14  4:33                     ` david
2021-10-14 15:06                       ` Jason Gunthorpe via iommu
2021-10-18  3:40                         ` david
2021-10-01  6:15       ` david
2021-09-22 12:51     ` Liu, Yi L
2021-09-22 13:32       ` Jason Gunthorpe via iommu
2021-09-23  6:26         ` Liu, Yi L
2021-10-01  6:13     ` David Gibson
2021-10-01 12:22       ` Jason Gunthorpe via iommu
2021-10-11  6:02         ` David Gibson
2021-10-11  8:49           ` Jean-Philippe Brucker
2021-10-11 23:38             ` Jason Gunthorpe via iommu
2021-10-12  8:33               ` Jean-Philippe Brucker
2021-10-13  7:14                 ` Tian, Kevin
2021-10-13  7:07             ` Tian, Kevin
2021-10-14  4:38             ` David Gibson
2021-10-11 18:49           ` Jason Gunthorpe via iommu
2021-10-14  4:53             ` David Gibson
2021-10-14 14:52               ` Jason Gunthorpe via iommu
2021-10-18  3:50                 ` David Gibson
2021-10-18 17:42                   ` Jason Gunthorpe via iommu
2021-09-22 13:45   ` Jean-Philippe Brucker
2021-09-29 10:47     ` Liu, Yi L
2021-10-01  6:11   ` David Gibson
2021-10-13  7:00     ` Tian, Kevin
2021-10-14  5:00       ` David Gibson
2021-10-14  6:53         ` Tian, Kevin
2021-10-25  5:05           ` David Gibson
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-21 17:47   ` Jason Gunthorpe via iommu
2021-09-22  3:41     ` Tian, Kevin
2021-09-22 12:55       ` Jason Gunthorpe via iommu
2021-09-19  6:38 ` [RFC 13/20] iommu: Extend iommu_at[de]tach_device() for multiple devices group Liu Yi L
2021-10-14  5:24   ` David Gibson
2021-10-14  7:06     ` Tian, Kevin
2021-10-18  3:57       ` David Gibson
2021-10-18 16:32         ` Jason Gunthorpe via iommu
2021-10-25  5:14           ` David Gibson
2021-10-25 12:14             ` Jason Gunthorpe via iommu
2021-10-25 13:16               ` David Gibson
2021-10-25 23:36                 ` Jason Gunthorpe via iommu
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-21 18:02   ` Jason Gunthorpe via iommu
2021-09-22  3:53     ` Tian, Kevin
2021-09-22 12:57       ` Jason Gunthorpe via iommu
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-21 18:04   ` Jason Gunthorpe via iommu
2021-09-22  3:56     ` Tian, Kevin
2021-09-22 12:58       ` Jason Gunthorpe via iommu
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-21 18:14   ` Jason Gunthorpe via iommu
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-22 14:49   ` Jean-Philippe Brucker
2021-09-29 10:44     ` Liu, Yi L
2021-09-29 12:07       ` Jean-Philippe Brucker
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 ` [RFC 19/20] iommu/vt-d: Implement device_info iommu_ops callback Liu Yi L
2021-09-19  6:38 ` [RFC 20/20] Doc: Add documentation for /dev/iommu Liu Yi L
2021-10-29  0:15   ` David Gibson
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-21 13:45 ` Jason Gunthorpe via iommu
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=20210919063848.1476776-2-yi.l.liu@intel.com \
    --to=yi.l.liu@intel.com \
    --cc=alex.williamson@redhat.com \
    --cc=ashok.raj@intel.com \
    --cc=corbet@lwn.net \
    --cc=dave.jiang@intel.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=dwmw2@infradead.org \
    --cc=hch@lst.de \
    --cc=iommu@lists.linux-foundation.org \
    --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=parav@mellanox.com \
    --cc=pbonzini@redhat.com \
    --cc=robin.murphy@arm.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).