All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Liu, Yi L" <yi.l.liu@intel.com>
To: Jason Gunthorpe <jgg@nvidia.com>
Cc: "Tian, Kevin" <kevin.tian@intel.com>,
	Jacob Pan <jacob.jun.pan@linux.intel.com>,
	Jean-Philippe Brucker <jean-philippe@linaro.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Joerg Roedel <joro@8bytes.org>,
	Lu Baolu <baolu.lu@linux.intel.com>,
	David Woodhouse <dwmw2@infradead.org>,
	"iommu@lists.linux-foundation.org"
	<iommu@lists.linux-foundation.org>,
	"cgroups@vger.kernel.org" <cgroups@vger.kernel.org>,
	Tejun Heo <tj@kernel.org>, Li Zefan <lizefan@huawei.com>,
	Johannes Weiner <hannes@cmpxchg.org>,
	"Jean-Philippe Brucker" <jean-philippe@linaro.com>,
	Alex Williamson <alex.williamson@redhat.com>,
	Eric Auger <eric.auger@redhat.com>,
	"Jonathan Corbet" <corbet@lwn.net>,
	"Raj, Ashok" <ashok.raj@intel.com>, "Wu, Hao" <hao.wu@intel.com>,
	"Jiang, Dave" <dave.jiang@intel.com>
Subject: RE: [PATCH V4 05/18] iommu/ioasid: Redefine IOASID set and allocation APIs
Date: Fri, 2 Apr 2021 12:46:55 +0000	[thread overview]
Message-ID: <BN6PR11MB4068B9036B42149B67B91596C37A9@BN6PR11MB4068.namprd11.prod.outlook.com> (raw)
In-Reply-To: <20210401115429.GY1463678@nvidia.com>

Hi Jason,

> From: Jason Gunthorpe <jgg@nvidia.com>
> Sent: Thursday, April 1, 2021 7:54 PM
> 
> On Thu, Apr 01, 2021 at 07:04:01AM +0000, Liu, Yi L wrote:
> 
> > After reading your reply in https://lore.kernel.org/linux-
> iommu/20210331123801.GD1463678@nvidia.com/#t
> > So you mean /dev/ioasid FD is per-VM instead of per-ioasid, so above
> skeleton
> > doesn't suit your idea.
> 
> You can do it one PASID per FD or multiple PASID's per FD. Most likely
> we will have high numbers of PASID's in a qemu process so I assume
> that number of FDs will start to be a contraining factor, thus
> multiplexing is reasonable.
> 
> It doesn't really change anything about the basic flow.
> 
> digging deeply into it either seems like a reasonable choice.
> 
> > +-----------------------------+-----------------------------------------------+
> > |      userspace              |               kernel space                    |
> > +-----------------------------+-----------------------------------------------+
> > | ioasid_fd =                 | /dev/ioasid does below:                       |
> > | open("/dev/ioasid", O_RDWR);|   struct ioasid_fd_ctx {                      |
> > |                             |       struct list_head ioasid_list;           |
> > |                             |       ...                                     |
> > |                             |   } ifd_ctx; // ifd_ctx is per ioasid_fd      |
> 
> Sure, possibly an xarray not a list
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(ioasid_fd,            | /dev/ioasid does below:                       |
> > |       ALLOC, &ioasid);      |   struct ioasid_data {                        |
> > |                             |       ioasid_t ioasid;                        |
> > |                             |       struct list_head device_list;           |
> > |                             |       struct list_head next;                  |
> > |                             |       ...                                     |
> > |                             |   } id_data; // id_data is per ioasid         |
> > |                             |                                               |
> > |                             |   list_add(&id_data.next,                     |
> > |                             |            &ifd_ctx.ioasid_list);
> > |
> 
> Yes, this should have a kref in it too
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(device_fd,            | VFIO does below:                              |
> > |       DEVICE_ALLOW_IOASID,  | 1) get ioasid_fd, check if ioasid_fd is valid |
> > |       ioasid_fd,            | 2) check if ioasid is allocated from ioasid_fd|
> > |       ioasid);              | 3) register device/domain info to /dev/ioasid |
> > |                             |    tracked in id_data.device_list             |
> > |                             | 4) record the ioasid in VFIO's per-device     |
> > |                             |    ioasid list for future security check      |
> 
> You would provide a function that does steps 1&2 look at eventfd for
> instance.
> 
> I'm not sure we need to register the device with the ioasid. device
> should incr the kref on the ioasid_data at this point.
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(ioasid_fd,            | /dev/ioasid does below:                       |
> > |       BIND_PGTBL,           | 1) find ioasid's id_data                      |
> > |       pgtbl_data,           | 2) loop the id_data.device_list and tell iommu|
> > |       ioasid);              |    give ioasid access to the devices
> > |
> 
> This seems backwards, DEVICE_ALLOW_IOASID should tell the iommu to
> give the ioasid to the device.
> 
> Here the ioctl should be about assigning a memory map from the the
> current
> mm_struct to the pasid
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(ioasid_fd,            | /dev/ioasid does below:                       |
> > |       UNBIND_PGTBL,         | 1) find ioasid's id_data                      |
> > |       ioasid);              | 2) loop the id_data.device_list and tell iommu|
> > |                             |    clear ioasid access to the devices         |
> 
> Also seems backwards. The ioctl here should be 'destroy ioasid' which
> wipes out the page table, halts DMA access and parks the PASID until
> all users are done.
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(device_fd,            | VFIO does below:                              |
> > |      DEVICE_DISALLOW_IOASID,| 1) check if ioasid is associated in VFIO's    |
> > |       ioasid_fd,            |    device ioasid list.                        |
> > |       ioasid);              | 2) unregister device/domain info from         |
> > |                             |    /dev/ioasid, clear in id_data.device_list  |
> 
> This should disconnect the iommu and kref_put the ioasid_data

thanks for the comments, updated the skeleton a little bit, accepted your Xarray
and kref suggestion.

+-----------------------------+------------------------------------------------+
|      userspace              |               kernel space                     |
+-----------------------------+------------------------------------------------+
| ioasid_fd =                 | /dev/ioasid does below:                        |
| open("/dev/ioasid", O_RDWR);|   struct ioasid_fd_ctx {                       |
|                             |        struct xarray xa;                       |
|                             |       ...                                      |
|                             |   } ifd_ctx; // ifd_ctx is per ioasid_fd       |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       ALLOC, &ioasid);      |   struct ioasid_data {                         |
|                             |       ioasid_t ioasid;                         |
|                             |       refcount_t refs;                         |
|                             |       ...                                      |
|                             |   } id_data; // id_data is per ioasid          |
|                             |                                                |
|                             |   refcount_set(&id_data->refs, 1);             |
+-----------------------------+------------------------------------------------+
| ioctl(device_fd,            | VFIO does below:                               |
|       DEVICE_ALLOW_IOASID,  | 1) get ioasid_fd, check if ioasid_fd is valid  |
|       ioasid_fd,            | 2) check if ioasid is allocated from ioasid_fd |
|       ioasid);              | 3) inr refcount on the ioasid                  |
|                             | 4) tell iommu to give the ioasid to the device |
|                             |    by an iommu API. iommu driver needs to      |
|                             |    store the ioasid/device info in a per       |
|                             |    ioasid allow device list                    |
|                             | 5) record the ioasid in VFIO's per-device      |
|                             |    ioasid list for future security check       |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       BIND_PGTBL,           | 1) find ioasid's id_data                       |
|       pgtbl_data,           | 2) call into iommu driver with ioasid, pgtbl   |
|       ioasid);              |    data, iommu driver setup the PASID entry[1] |
|                             |    with the ioasid and the pgtbl_data          |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       CAHCE_INVLD,          | 1) find ioasid's id_data                       |
|       inv_data,             | 2) call into iommu driver with ioasid, inv     |
|       ioasid);              |    data, iommu driver invalidates cache        |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       UNBIND_PGTBL,         | 1) find ioasid's id_data                       |
|       ioasid);              | 2) call into iommu driver with ioasid, iommu   |
|                             |    driver destroy the PASID entry to block DMA |
|                             |    with this ioasid from device                |
+-----------------------------+------------------------------------------------+
| ioctl(device_fd,            | VFIO does below:                               |
|      DEVICE_DISALLOW_IOASID,| 1) check if ioasid is associated in VFIO's     |
|       ioasid_fd,            |    device ioasid list                          |
|       ioasid);              | 2) tell iommu driver to clear the device from  |
|                             |    its per-ioasid device allow list            |
|                             | 3) put refcount on the ioasid                  |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       FREE, ioasid);        |  list_del(&id_data.next);                      |
+-----------------------------+------------------------------------------------+

[1] PASID entry is an entry in a per-device PASID table, this is where the
    page table pointer is stored. e.g. guest cr3 page table pointer. Setup
    PASID entry in a device's PASID table means the access is finally grant
    in IOMMU side.

I kept FREE as it seems to be more symmetric since there is an ALLOC
exposed to userspace. But yeah, I'm open with removing it all the same
if it's really unnecessary per your opinion.

Need your help again on an open.
The major purpose of this series is to support vSVA for guest based on
nested translation. And there is another usage case which is also based
on nested translation but don't have an ioasid. And still, it needs the
bind/unbind_pgtbl, cache_invalidation uAPI. It is gIOVA support. In this
usage, page table is a guest IOVA page table, VMM needs to bind this page
table to host and enabled nested translation, also needs to do cache
invalidation when guest IOVA page table has changes. It's very similar
with the page table bind of vSVA. Only difference is there is no ioasid
in the gIOVA case. Instead, gIOVA case requires device information. But
with regards to the uAPI reusing, need to fit gIOVA to /dev/ioasid model.
As of now, I think it may require user space passes a device FD to the
BIND/UNBIND_PGTBL and CAHCE_INVLD ioctl, then iommu driver can bind the
gIOVA page table to a correct device. Not sure if it looks good. Do you
have any suggestion on it?

[...]
> Include a sequence showing how the kvm FD is used to program the
> vPASID to pPASID table that ENQCMD uses.
>
> Show how dynamic authorization works based on requests from the
> guest's vIOMMU

I'd like to see if the updated skeleton suits your idea first, then
draw a more complete flow to show this.

Regards,
Yi Liu

> Jason

WARNING: multiple messages have this Message-ID (diff)
From: "Liu, Yi L" <yi.l.liu@intel.com>
To: Jason Gunthorpe <jgg@nvidia.com>
Cc: Jean-Philippe Brucker <jean-philippe@linaro.org>,
	"Tian, Kevin" <kevin.tian@intel.com>,
	Alex Williamson <alex.williamson@redhat.com>,
	"Raj, Ashok" <ashok.raj@intel.com>,
	Jonathan Corbet <corbet@lwn.net>,
	Jean-Philippe Brucker <jean-philippe@linaro.com>,
	LKML <linux-kernel@vger.kernel.org>,
	"Jiang, Dave" <dave.jiang@intel.com>,
	"iommu@lists.linux-foundation.org"
	<iommu@lists.linux-foundation.org>, Li Zefan <lizefan@huawei.com>,
	Johannes Weiner <hannes@cmpxchg.org>, Tejun Heo <tj@kernel.org>,
	"cgroups@vger.kernel.org" <cgroups@vger.kernel.org>,
	"Wu, Hao" <hao.wu@intel.com>,
	David Woodhouse <dwmw2@infradead.org>
Subject: RE: [PATCH V4 05/18] iommu/ioasid: Redefine IOASID set and allocation APIs
Date: Fri, 2 Apr 2021 12:46:55 +0000	[thread overview]
Message-ID: <BN6PR11MB4068B9036B42149B67B91596C37A9@BN6PR11MB4068.namprd11.prod.outlook.com> (raw)
In-Reply-To: <20210401115429.GY1463678@nvidia.com>

Hi Jason,

> From: Jason Gunthorpe <jgg@nvidia.com>
> Sent: Thursday, April 1, 2021 7:54 PM
> 
> On Thu, Apr 01, 2021 at 07:04:01AM +0000, Liu, Yi L wrote:
> 
> > After reading your reply in https://lore.kernel.org/linux-
> iommu/20210331123801.GD1463678@nvidia.com/#t
> > So you mean /dev/ioasid FD is per-VM instead of per-ioasid, so above
> skeleton
> > doesn't suit your idea.
> 
> You can do it one PASID per FD or multiple PASID's per FD. Most likely
> we will have high numbers of PASID's in a qemu process so I assume
> that number of FDs will start to be a contraining factor, thus
> multiplexing is reasonable.
> 
> It doesn't really change anything about the basic flow.
> 
> digging deeply into it either seems like a reasonable choice.
> 
> > +-----------------------------+-----------------------------------------------+
> > |      userspace              |               kernel space                    |
> > +-----------------------------+-----------------------------------------------+
> > | ioasid_fd =                 | /dev/ioasid does below:                       |
> > | open("/dev/ioasid", O_RDWR);|   struct ioasid_fd_ctx {                      |
> > |                             |       struct list_head ioasid_list;           |
> > |                             |       ...                                     |
> > |                             |   } ifd_ctx; // ifd_ctx is per ioasid_fd      |
> 
> Sure, possibly an xarray not a list
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(ioasid_fd,            | /dev/ioasid does below:                       |
> > |       ALLOC, &ioasid);      |   struct ioasid_data {                        |
> > |                             |       ioasid_t ioasid;                        |
> > |                             |       struct list_head device_list;           |
> > |                             |       struct list_head next;                  |
> > |                             |       ...                                     |
> > |                             |   } id_data; // id_data is per ioasid         |
> > |                             |                                               |
> > |                             |   list_add(&id_data.next,                     |
> > |                             |            &ifd_ctx.ioasid_list);
> > |
> 
> Yes, this should have a kref in it too
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(device_fd,            | VFIO does below:                              |
> > |       DEVICE_ALLOW_IOASID,  | 1) get ioasid_fd, check if ioasid_fd is valid |
> > |       ioasid_fd,            | 2) check if ioasid is allocated from ioasid_fd|
> > |       ioasid);              | 3) register device/domain info to /dev/ioasid |
> > |                             |    tracked in id_data.device_list             |
> > |                             | 4) record the ioasid in VFIO's per-device     |
> > |                             |    ioasid list for future security check      |
> 
> You would provide a function that does steps 1&2 look at eventfd for
> instance.
> 
> I'm not sure we need to register the device with the ioasid. device
> should incr the kref on the ioasid_data at this point.
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(ioasid_fd,            | /dev/ioasid does below:                       |
> > |       BIND_PGTBL,           | 1) find ioasid's id_data                      |
> > |       pgtbl_data,           | 2) loop the id_data.device_list and tell iommu|
> > |       ioasid);              |    give ioasid access to the devices
> > |
> 
> This seems backwards, DEVICE_ALLOW_IOASID should tell the iommu to
> give the ioasid to the device.
> 
> Here the ioctl should be about assigning a memory map from the the
> current
> mm_struct to the pasid
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(ioasid_fd,            | /dev/ioasid does below:                       |
> > |       UNBIND_PGTBL,         | 1) find ioasid's id_data                      |
> > |       ioasid);              | 2) loop the id_data.device_list and tell iommu|
> > |                             |    clear ioasid access to the devices         |
> 
> Also seems backwards. The ioctl here should be 'destroy ioasid' which
> wipes out the page table, halts DMA access and parks the PASID until
> all users are done.
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(device_fd,            | VFIO does below:                              |
> > |      DEVICE_DISALLOW_IOASID,| 1) check if ioasid is associated in VFIO's    |
> > |       ioasid_fd,            |    device ioasid list.                        |
> > |       ioasid);              | 2) unregister device/domain info from         |
> > |                             |    /dev/ioasid, clear in id_data.device_list  |
> 
> This should disconnect the iommu and kref_put the ioasid_data

thanks for the comments, updated the skeleton a little bit, accepted your Xarray
and kref suggestion.

+-----------------------------+------------------------------------------------+
|      userspace              |               kernel space                     |
+-----------------------------+------------------------------------------------+
| ioasid_fd =                 | /dev/ioasid does below:                        |
| open("/dev/ioasid", O_RDWR);|   struct ioasid_fd_ctx {                       |
|                             |        struct xarray xa;                       |
|                             |       ...                                      |
|                             |   } ifd_ctx; // ifd_ctx is per ioasid_fd       |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       ALLOC, &ioasid);      |   struct ioasid_data {                         |
|                             |       ioasid_t ioasid;                         |
|                             |       refcount_t refs;                         |
|                             |       ...                                      |
|                             |   } id_data; // id_data is per ioasid          |
|                             |                                                |
|                             |   refcount_set(&id_data->refs, 1);             |
+-----------------------------+------------------------------------------------+
| ioctl(device_fd,            | VFIO does below:                               |
|       DEVICE_ALLOW_IOASID,  | 1) get ioasid_fd, check if ioasid_fd is valid  |
|       ioasid_fd,            | 2) check if ioasid is allocated from ioasid_fd |
|       ioasid);              | 3) inr refcount on the ioasid                  |
|                             | 4) tell iommu to give the ioasid to the device |
|                             |    by an iommu API. iommu driver needs to      |
|                             |    store the ioasid/device info in a per       |
|                             |    ioasid allow device list                    |
|                             | 5) record the ioasid in VFIO's per-device      |
|                             |    ioasid list for future security check       |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       BIND_PGTBL,           | 1) find ioasid's id_data                       |
|       pgtbl_data,           | 2) call into iommu driver with ioasid, pgtbl   |
|       ioasid);              |    data, iommu driver setup the PASID entry[1] |
|                             |    with the ioasid and the pgtbl_data          |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       CAHCE_INVLD,          | 1) find ioasid's id_data                       |
|       inv_data,             | 2) call into iommu driver with ioasid, inv     |
|       ioasid);              |    data, iommu driver invalidates cache        |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       UNBIND_PGTBL,         | 1) find ioasid's id_data                       |
|       ioasid);              | 2) call into iommu driver with ioasid, iommu   |
|                             |    driver destroy the PASID entry to block DMA |
|                             |    with this ioasid from device                |
+-----------------------------+------------------------------------------------+
| ioctl(device_fd,            | VFIO does below:                               |
|      DEVICE_DISALLOW_IOASID,| 1) check if ioasid is associated in VFIO's     |
|       ioasid_fd,            |    device ioasid list                          |
|       ioasid);              | 2) tell iommu driver to clear the device from  |
|                             |    its per-ioasid device allow list            |
|                             | 3) put refcount on the ioasid                  |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       FREE, ioasid);        |  list_del(&id_data.next);                      |
+-----------------------------+------------------------------------------------+

[1] PASID entry is an entry in a per-device PASID table, this is where the
    page table pointer is stored. e.g. guest cr3 page table pointer. Setup
    PASID entry in a device's PASID table means the access is finally grant
    in IOMMU side.

I kept FREE as it seems to be more symmetric since there is an ALLOC
exposed to userspace. But yeah, I'm open with removing it all the same
if it's really unnecessary per your opinion.

Need your help again on an open.
The major purpose of this series is to support vSVA for guest based on
nested translation. And there is another usage case which is also based
on nested translation but don't have an ioasid. And still, it needs the
bind/unbind_pgtbl, cache_invalidation uAPI. It is gIOVA support. In this
usage, page table is a guest IOVA page table, VMM needs to bind this page
table to host and enabled nested translation, also needs to do cache
invalidation when guest IOVA page table has changes. It's very similar
with the page table bind of vSVA. Only difference is there is no ioasid
in the gIOVA case. Instead, gIOVA case requires device information. But
with regards to the uAPI reusing, need to fit gIOVA to /dev/ioasid model.
As of now, I think it may require user space passes a device FD to the
BIND/UNBIND_PGTBL and CAHCE_INVLD ioctl, then iommu driver can bind the
gIOVA page table to a correct device. Not sure if it looks good. Do you
have any suggestion on it?

[...]
> Include a sequence showing how the kvm FD is used to program the
> vPASID to pPASID table that ENQCMD uses.
>
> Show how dynamic authorization works based on requests from the
> guest's vIOMMU

I'd like to see if the updated skeleton suits your idea first, then
draw a more complete flow to show this.

Regards,
Yi Liu

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

WARNING: multiple messages have this Message-ID (diff)
From: "Liu, Yi L" <yi.l.liu-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
To: Jason Gunthorpe <jgg-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Cc: "Tian,
	Kevin" <kevin.tian-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
	Jacob Pan <jacob.jun.pan-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>,
	Jean-Philippe Brucker
	<jean-philippe-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
	LKML <linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Joerg Roedel <joro-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>,
	Lu Baolu <baolu.lu-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>,
	David Woodhouse <dwmw2-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>,
	"iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org"
	<iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>,
	"cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Tejun Heo <tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Li Zefan <lizefan-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>,
	Johannes Weiner <hannes-druUgvl0LCNAfugRpC6u6w@public.gmane.org>,
	Jean-Philippe Brucker
	<jean-philippe-68IGFXMjmZ7QT0dZR+AlfA@public.gmane.org>,
	Alex Williamson
	<alex.williamson-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	Eric Auger <eric.auger-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	Jonathan Corbet <corbet-T1hC0tSOHrs@public.gmane.org>,
	"Raj, Ashok" <ashok.raj-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
	"Wu, Hao" <hao.wu-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
	"Jiang,
	Dave" <dave.jiang-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Subject: RE: [PATCH V4 05/18] iommu/ioasid: Redefine IOASID set and allocation APIs
Date: Fri, 2 Apr 2021 12:46:55 +0000	[thread overview]
Message-ID: <BN6PR11MB4068B9036B42149B67B91596C37A9@BN6PR11MB4068.namprd11.prod.outlook.com> (raw)
In-Reply-To: <20210401115429.GY1463678-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>

Hi Jason,

> From: Jason Gunthorpe <jgg-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> Sent: Thursday, April 1, 2021 7:54 PM
> 
> On Thu, Apr 01, 2021 at 07:04:01AM +0000, Liu, Yi L wrote:
> 
> > After reading your reply in https://lore.kernel.org/linux-
> iommu/20210331123801.GD1463678-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org/#t
> > So you mean /dev/ioasid FD is per-VM instead of per-ioasid, so above
> skeleton
> > doesn't suit your idea.
> 
> You can do it one PASID per FD or multiple PASID's per FD. Most likely
> we will have high numbers of PASID's in a qemu process so I assume
> that number of FDs will start to be a contraining factor, thus
> multiplexing is reasonable.
> 
> It doesn't really change anything about the basic flow.
> 
> digging deeply into it either seems like a reasonable choice.
> 
> > +-----------------------------+-----------------------------------------------+
> > |      userspace              |               kernel space                    |
> > +-----------------------------+-----------------------------------------------+
> > | ioasid_fd =                 | /dev/ioasid does below:                       |
> > | open("/dev/ioasid", O_RDWR);|   struct ioasid_fd_ctx {                      |
> > |                             |       struct list_head ioasid_list;           |
> > |                             |       ...                                     |
> > |                             |   } ifd_ctx; // ifd_ctx is per ioasid_fd      |
> 
> Sure, possibly an xarray not a list
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(ioasid_fd,            | /dev/ioasid does below:                       |
> > |       ALLOC, &ioasid);      |   struct ioasid_data {                        |
> > |                             |       ioasid_t ioasid;                        |
> > |                             |       struct list_head device_list;           |
> > |                             |       struct list_head next;                  |
> > |                             |       ...                                     |
> > |                             |   } id_data; // id_data is per ioasid         |
> > |                             |                                               |
> > |                             |   list_add(&id_data.next,                     |
> > |                             |            &ifd_ctx.ioasid_list);
> > |
> 
> Yes, this should have a kref in it too
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(device_fd,            | VFIO does below:                              |
> > |       DEVICE_ALLOW_IOASID,  | 1) get ioasid_fd, check if ioasid_fd is valid |
> > |       ioasid_fd,            | 2) check if ioasid is allocated from ioasid_fd|
> > |       ioasid);              | 3) register device/domain info to /dev/ioasid |
> > |                             |    tracked in id_data.device_list             |
> > |                             | 4) record the ioasid in VFIO's per-device     |
> > |                             |    ioasid list for future security check      |
> 
> You would provide a function that does steps 1&2 look at eventfd for
> instance.
> 
> I'm not sure we need to register the device with the ioasid. device
> should incr the kref on the ioasid_data at this point.
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(ioasid_fd,            | /dev/ioasid does below:                       |
> > |       BIND_PGTBL,           | 1) find ioasid's id_data                      |
> > |       pgtbl_data,           | 2) loop the id_data.device_list and tell iommu|
> > |       ioasid);              |    give ioasid access to the devices
> > |
> 
> This seems backwards, DEVICE_ALLOW_IOASID should tell the iommu to
> give the ioasid to the device.
> 
> Here the ioctl should be about assigning a memory map from the the
> current
> mm_struct to the pasid
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(ioasid_fd,            | /dev/ioasid does below:                       |
> > |       UNBIND_PGTBL,         | 1) find ioasid's id_data                      |
> > |       ioasid);              | 2) loop the id_data.device_list and tell iommu|
> > |                             |    clear ioasid access to the devices         |
> 
> Also seems backwards. The ioctl here should be 'destroy ioasid' which
> wipes out the page table, halts DMA access and parks the PASID until
> all users are done.
> 
> > +-----------------------------+-----------------------------------------------+
> > | ioctl(device_fd,            | VFIO does below:                              |
> > |      DEVICE_DISALLOW_IOASID,| 1) check if ioasid is associated in VFIO's    |
> > |       ioasid_fd,            |    device ioasid list.                        |
> > |       ioasid);              | 2) unregister device/domain info from         |
> > |                             |    /dev/ioasid, clear in id_data.device_list  |
> 
> This should disconnect the iommu and kref_put the ioasid_data

thanks for the comments, updated the skeleton a little bit, accepted your Xarray
and kref suggestion.

+-----------------------------+------------------------------------------------+
|      userspace              |               kernel space                     |
+-----------------------------+------------------------------------------------+
| ioasid_fd =                 | /dev/ioasid does below:                        |
| open("/dev/ioasid", O_RDWR);|   struct ioasid_fd_ctx {                       |
|                             |        struct xarray xa;                       |
|                             |       ...                                      |
|                             |   } ifd_ctx; // ifd_ctx is per ioasid_fd       |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       ALLOC, &ioasid);      |   struct ioasid_data {                         |
|                             |       ioasid_t ioasid;                         |
|                             |       refcount_t refs;                         |
|                             |       ...                                      |
|                             |   } id_data; // id_data is per ioasid          |
|                             |                                                |
|                             |   refcount_set(&id_data->refs, 1);             |
+-----------------------------+------------------------------------------------+
| ioctl(device_fd,            | VFIO does below:                               |
|       DEVICE_ALLOW_IOASID,  | 1) get ioasid_fd, check if ioasid_fd is valid  |
|       ioasid_fd,            | 2) check if ioasid is allocated from ioasid_fd |
|       ioasid);              | 3) inr refcount on the ioasid                  |
|                             | 4) tell iommu to give the ioasid to the device |
|                             |    by an iommu API. iommu driver needs to      |
|                             |    store the ioasid/device info in a per       |
|                             |    ioasid allow device list                    |
|                             | 5) record the ioasid in VFIO's per-device      |
|                             |    ioasid list for future security check       |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       BIND_PGTBL,           | 1) find ioasid's id_data                       |
|       pgtbl_data,           | 2) call into iommu driver with ioasid, pgtbl   |
|       ioasid);              |    data, iommu driver setup the PASID entry[1] |
|                             |    with the ioasid and the pgtbl_data          |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       CAHCE_INVLD,          | 1) find ioasid's id_data                       |
|       inv_data,             | 2) call into iommu driver with ioasid, inv     |
|       ioasid);              |    data, iommu driver invalidates cache        |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       UNBIND_PGTBL,         | 1) find ioasid's id_data                       |
|       ioasid);              | 2) call into iommu driver with ioasid, iommu   |
|                             |    driver destroy the PASID entry to block DMA |
|                             |    with this ioasid from device                |
+-----------------------------+------------------------------------------------+
| ioctl(device_fd,            | VFIO does below:                               |
|      DEVICE_DISALLOW_IOASID,| 1) check if ioasid is associated in VFIO's     |
|       ioasid_fd,            |    device ioasid list                          |
|       ioasid);              | 2) tell iommu driver to clear the device from  |
|                             |    its per-ioasid device allow list            |
|                             | 3) put refcount on the ioasid                  |
+-----------------------------+------------------------------------------------+
| ioctl(ioasid_fd,            | /dev/ioasid does below:                        |
|       FREE, ioasid);        |  list_del(&id_data.next);                      |
+-----------------------------+------------------------------------------------+

[1] PASID entry is an entry in a per-device PASID table, this is where the
    page table pointer is stored. e.g. guest cr3 page table pointer. Setup
    PASID entry in a device's PASID table means the access is finally grant
    in IOMMU side.

I kept FREE as it seems to be more symmetric since there is an ALLOC
exposed to userspace. But yeah, I'm open with removing it all the same
if it's really unnecessary per your opinion.

Need your help again on an open.
The major purpose of this series is to support vSVA for guest based on
nested translation. And there is another usage case which is also based
on nested translation but don't have an ioasid. And still, it needs the
bind/unbind_pgtbl, cache_invalidation uAPI. It is gIOVA support. In this
usage, page table is a guest IOVA page table, VMM needs to bind this page
table to host and enabled nested translation, also needs to do cache
invalidation when guest IOVA page table has changes. It's very similar
with the page table bind of vSVA. Only difference is there is no ioasid
in the gIOVA case. Instead, gIOVA case requires device information. But
with regards to the uAPI reusing, need to fit gIOVA to /dev/ioasid model.
As of now, I think it may require user space passes a device FD to the
BIND/UNBIND_PGTBL and CAHCE_INVLD ioctl, then iommu driver can bind the
gIOVA page table to a correct device. Not sure if it looks good. Do you
have any suggestion on it?

[...]
> Include a sequence showing how the kvm FD is used to program the
> vPASID to pPASID table that ENQCMD uses.
>
> Show how dynamic authorization works based on requests from the
> guest's vIOMMU

I'd like to see if the updated skeleton suits your idea first, then
draw a more complete flow to show this.

Regards,
Yi Liu

> Jason

  reply	other threads:[~2021-04-02 12:47 UTC|newest]

Thread overview: 794+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-27 22:01 [PATCH V4 00/18] IOASID extensions for guest SVA Jacob Pan
2021-02-27 22:01 ` Jacob Pan
2021-02-27 22:01 ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 01/18] docs: Document IO Address Space ID (IOASID) APIs Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 02/18] iommu/ioasid: Rename ioasid_set_data() Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 03/18] iommu/ioasid: Add a separate function for detach data Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 04/18] iommu/ioasid: Support setting system-wide capacity Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 05/18] iommu/ioasid: Redefine IOASID set and allocation APIs Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-03-19  0:22   ` Jacob Pan
2021-03-19  0:22     ` Jacob Pan
2021-03-19  0:22     ` Jacob Pan
2021-03-19  9:58     ` Jean-Philippe Brucker
2021-03-19  9:58       ` Jean-Philippe Brucker
2021-03-19  9:58       ` Jean-Philippe Brucker
2021-03-19 12:46       ` Jason Gunthorpe
2021-03-19 12:46         ` Jason Gunthorpe
2021-03-19 12:46         ` Jason Gunthorpe
2021-03-19 13:41         ` Jean-Philippe Brucker
2021-03-19 13:41           ` Jean-Philippe Brucker
2021-03-19 13:41           ` Jean-Philippe Brucker
2021-03-19 13:54           ` Jason Gunthorpe
2021-03-19 13:54             ` Jason Gunthorpe
2021-03-19 13:54             ` Jason Gunthorpe
2021-03-19 18:22             ` Jacob Pan
2021-03-19 18:22               ` Jacob Pan
2021-03-19 18:22               ` Jacob Pan
2021-03-22  9:24               ` Jean-Philippe Brucker
2021-03-22  9:24                 ` Jean-Philippe Brucker
2021-03-22  9:24                 ` Jean-Philippe Brucker
2021-03-24 17:02                 ` Jacob Pan
2021-03-24 17:02                   ` Jacob Pan
2021-03-24 17:02                   ` Jacob Pan
2021-03-24 17:03                   ` Jason Gunthorpe
2021-03-24 17:03                     ` Jason Gunthorpe
2021-03-24 17:03                     ` Jason Gunthorpe
2021-03-24 22:12                     ` Jacob Pan
2021-03-24 22:12                       ` Jacob Pan
2021-03-24 22:12                       ` Jacob Pan
2021-03-25 10:21                       ` Jean-Philippe Brucker
2021-03-25 10:21                         ` Jean-Philippe Brucker
2021-03-25 10:21                         ` Jean-Philippe Brucker
2021-03-25 17:02                         ` Jacob Pan
2021-03-25 17:02                           ` Jacob Pan
2021-03-25 17:02                           ` Jacob Pan
2021-03-25 17:16                           ` Jason Gunthorpe
2021-03-25 17:16                             ` Jason Gunthorpe
2021-03-25 17:16                             ` Jason Gunthorpe
2021-03-25 18:23                             ` Jacob Pan
2021-03-25 18:23                               ` Jacob Pan
2021-03-25 18:23                               ` Jacob Pan
2021-03-26  8:06                             ` Jean-Philippe Brucker
2021-03-26  8:06                               ` Jean-Philippe Brucker
2021-03-26  8:06                               ` Jean-Philippe Brucker
2021-03-30 13:07                               ` Jason Gunthorpe
2021-03-30 13:07                                 ` Jason Gunthorpe
2021-03-30 13:07                                 ` Jason Gunthorpe
2021-03-30 13:42                                 ` Jean-Philippe Brucker
2021-03-30 13:42                                   ` Jean-Philippe Brucker
2021-03-30 13:42                                   ` Jean-Philippe Brucker
2021-03-30 13:46                                   ` Jason Gunthorpe
2021-03-30 13:46                                     ` Jason Gunthorpe
2021-03-30 13:46                                     ` Jason Gunthorpe
2021-03-25 10:26                   ` Jean-Philippe Brucker
2021-03-25 10:26                     ` Jean-Philippe Brucker
2021-03-25 10:26                     ` Jean-Philippe Brucker
2021-03-22 12:03               ` Jason Gunthorpe
2021-03-22 12:03                 ` Jason Gunthorpe
2021-03-22 12:03                 ` Jason Gunthorpe
2021-03-24 19:05                 ` Jacob Pan
2021-03-24 19:05                   ` Jacob Pan
2021-03-24 19:05                   ` Jacob Pan
2021-03-29 16:31                   ` Jason Gunthorpe
2021-03-29 16:31                     ` Jason Gunthorpe
2021-03-29 16:31                     ` Jason Gunthorpe
2021-03-29 22:55                     ` Jacob Pan
2021-03-29 22:55                       ` Jacob Pan
2021-03-29 22:55                       ` Jacob Pan
2021-03-30 13:43                       ` Jason Gunthorpe
2021-03-30 13:43                         ` Jason Gunthorpe
2021-03-30 13:43                         ` Jason Gunthorpe
2021-03-31  0:10                         ` Jacob Pan
2021-03-31  0:10                           ` Jacob Pan
2021-03-31  0:10                           ` Jacob Pan
2021-03-31 12:28                           ` Jason Gunthorpe
2021-03-31 12:28                             ` Jason Gunthorpe
2021-03-31 12:28                             ` Jason Gunthorpe
2021-03-31 16:34                             ` Jacob Pan
2021-03-31 16:34                               ` Jacob Pan
2021-03-31 16:34                               ` Jacob Pan
2021-03-31 17:31                               ` Jason Gunthorpe
2021-03-31 17:31                                 ` Jason Gunthorpe
2021-03-31 17:31                                 ` Jason Gunthorpe
2021-03-31 18:20                                 ` Jacob Pan
2021-03-31 18:20                                   ` Jacob Pan
2021-03-31 18:20                                   ` Jacob Pan
2021-03-31 18:33                                   ` Jason Gunthorpe
2021-03-31 18:33                                     ` Jason Gunthorpe
2021-03-31 18:33                                     ` Jason Gunthorpe
2021-03-31 21:50                                     ` Jacob Pan
2021-03-31 21:50                                       ` Jacob Pan
2021-03-31 21:50                                       ` Jacob Pan
2021-03-31  8:38                         ` Liu, Yi L
2021-03-31  8:38                           ` Liu, Yi L
2021-03-31  8:38                           ` Liu, Yi L
2021-03-30  1:37                     ` Tian, Kevin
2021-03-30  1:37                       ` Tian, Kevin
2021-03-30  1:37                       ` Tian, Kevin
2021-03-30 13:28                       ` Jason Gunthorpe
2021-03-30 13:28                         ` Jason Gunthorpe
2021-03-30 13:28                         ` Jason Gunthorpe
2021-03-31  7:38                         ` Liu, Yi L
2021-03-31  7:38                           ` Liu, Yi L
2021-03-31  7:38                           ` Liu, Yi L
2021-03-31 12:40                           ` Jason Gunthorpe
2021-03-31 12:40                             ` Jason Gunthorpe
2021-03-31 12:40                             ` Jason Gunthorpe
2021-04-01  4:38                             ` Liu, Yi L
2021-04-01  4:38                               ` Liu, Yi L
2021-04-01  4:38                               ` Liu, Yi L
2021-04-01  7:04                               ` Liu, Yi L
2021-04-01  7:04                                 ` Liu, Yi L
2021-04-01  7:04                                 ` Liu, Yi L
2021-04-01 11:54                                 ` Jason Gunthorpe
2021-04-01 11:54                                   ` Jason Gunthorpe
2021-04-01 11:54                                   ` Jason Gunthorpe
2021-04-02 12:46                                   ` Liu, Yi L [this message]
2021-04-02 12:46                                     ` Liu, Yi L
2021-04-02 12:46                                     ` Liu, Yi L
2021-04-01 12:05                                 ` Jean-Philippe Brucker
2021-04-01 12:05                                   ` Jean-Philippe Brucker
2021-04-01 12:05                                   ` Jean-Philippe Brucker
2021-04-01 12:12                                   ` Jason Gunthorpe
2021-04-01 12:12                                     ` Jason Gunthorpe
2021-04-01 12:12                                     ` Jason Gunthorpe
2021-04-01 13:38                                   ` Liu, Yi L
2021-04-01 13:38                                     ` Liu, Yi L
2021-04-01 13:38                                     ` Liu, Yi L
2021-04-01 13:42                                     ` Jason Gunthorpe
2021-04-01 13:42                                       ` Jason Gunthorpe
2021-04-01 13:42                                       ` Jason Gunthorpe
2021-04-01 14:08                                       ` Liu, Yi L
2021-04-01 14:08                                         ` Liu, Yi L
2021-04-01 14:08                                         ` Liu, Yi L
2021-04-01 16:03                                         ` Jason Gunthorpe
2021-04-01 16:03                                           ` Jason Gunthorpe
2021-04-01 16:03                                           ` Jason Gunthorpe
2021-04-02  7:30                                           ` Tian, Kevin
2021-04-02  7:30                                             ` Tian, Kevin
2021-04-02  7:30                                             ` Tian, Kevin
2021-04-05 23:35                                             ` Jason Gunthorpe
2021-04-05 23:35                                               ` Jason Gunthorpe
2021-04-05 23:35                                               ` Jason Gunthorpe
2021-04-06  0:37                                               ` Tian, Kevin
2021-04-06  0:37                                                 ` Tian, Kevin
2021-04-06  0:37                                                 ` Tian, Kevin
2021-04-06 12:15                                                 ` Jason Gunthorpe
2021-04-06 12:15                                                   ` Jason Gunthorpe
2021-04-06 12:15                                                   ` Jason Gunthorpe
2021-04-15 13:11                                           ` Auger Eric
2021-04-15 13:11                                             ` Auger Eric
2021-04-15 23:07                                             ` Jason Gunthorpe
2021-04-15 23:07                                               ` Jason Gunthorpe
2021-04-15 23:07                                               ` Jason Gunthorpe
2021-04-16 13:12                                               ` Jacob Pan
2021-04-16 13:12                                                 ` Jacob Pan
2021-04-16 13:12                                                 ` Jacob Pan
2021-04-16 15:45                                                 ` Alex Williamson
2021-04-16 15:45                                                   ` Alex Williamson
2021-04-16 17:23                                                   ` Jacob Pan
2021-04-16 17:23                                                     ` Jacob Pan
2021-04-16 17:23                                                     ` Jacob Pan
2021-04-16 17:54                                                     ` Jason Gunthorpe
2021-04-16 17:54                                                       ` Jason Gunthorpe
2021-04-16 17:54                                                       ` Jason Gunthorpe
2021-04-21 13:18                                                   ` Liu, Yi L
2021-04-21 13:18                                                     ` Liu, Yi L
2021-04-21 13:18                                                     ` Liu, Yi L
2021-04-21 16:23                                                     ` Jason Gunthorpe
2021-04-21 16:23                                                       ` Jason Gunthorpe
2021-04-21 16:23                                                       ` Jason Gunthorpe
2021-04-21 16:54                                                       ` Alex Williamson
2021-04-21 16:54                                                         ` Alex Williamson
2021-04-21 17:52                                                         ` Jason Gunthorpe
2021-04-21 17:52                                                           ` Jason Gunthorpe
2021-04-21 17:52                                                           ` Jason Gunthorpe
2021-04-21 19:33                                                           ` Alex Williamson
2021-04-21 19:33                                                             ` Alex Williamson
2021-04-21 19:33                                                             ` Alex Williamson
2021-04-21 23:03                                                             ` Jason Gunthorpe
2021-04-21 23:03                                                               ` Jason Gunthorpe
2021-04-21 23:03                                                               ` Jason Gunthorpe
2021-04-22  8:34                                                               ` Tian, Kevin
2021-04-22  8:34                                                                 ` Tian, Kevin
2021-04-22  8:34                                                                 ` Tian, Kevin
2021-04-22 12:10                                                                 ` Jason Gunthorpe
2021-04-22 12:10                                                                   ` Jason Gunthorpe
2021-04-23  9:06                                                                   ` Tian, Kevin
2021-04-23  9:06                                                                     ` Tian, Kevin
2021-04-23  9:06                                                                     ` Tian, Kevin
2021-04-23 11:49                                                                     ` Jason Gunthorpe
2021-04-23 11:49                                                                       ` Jason Gunthorpe
2021-04-25  9:24                                                                       ` Tian, Kevin
2021-04-25  9:24                                                                         ` Tian, Kevin
2021-04-25  9:24                                                                         ` Tian, Kevin
2021-04-26 12:38                                                                         ` Jason Gunthorpe
2021-04-26 12:38                                                                           ` Jason Gunthorpe
2021-04-26 12:38                                                                           ` Jason Gunthorpe
2021-04-28  6:34                                                                           ` Tian, Kevin
2021-04-28  6:34                                                                             ` Tian, Kevin
2021-04-28  6:34                                                                             ` Tian, Kevin
2021-04-28 15:06                                                                             ` Alex Williamson
2021-04-28 15:06                                                                               ` Alex Williamson
2021-05-07  7:36                                                                               ` Tian, Kevin
2021-05-07  7:36                                                                                 ` Tian, Kevin
2021-05-07  7:36                                                                                 ` Tian, Kevin
2021-05-07 11:56                                                                                 ` Jason Gunthorpe
2021-05-07 11:56                                                                                   ` Jason Gunthorpe
2021-05-07 11:56                                                                                   ` Jason Gunthorpe
2021-05-07 17:06                                                                                 ` Alex Williamson
2021-05-07 17:06                                                                                   ` Alex Williamson
2021-05-07 17:06                                                                                   ` Alex Williamson
2021-05-07 17:10                                                                                   ` Jason Gunthorpe
2021-05-07 17:10                                                                                     ` Jason Gunthorpe
2021-05-07 17:10                                                                                     ` Jason Gunthorpe
2021-05-08  6:08                                                                                     ` Tian, Kevin
2021-05-08  6:08                                                                                       ` Tian, Kevin
2021-05-08  7:31                                                                                   ` Tian, Kevin
2021-05-08  7:31                                                                                     ` Tian, Kevin
2021-05-08  7:31                                                                                     ` Tian, Kevin
2021-05-10  2:56                                                                                     ` Lu Baolu
2021-05-10  2:56                                                                                       ` Lu Baolu
2021-05-10  2:56                                                                                       ` Lu Baolu
2021-04-28 20:46                                                                             ` Jason Gunthorpe
2021-04-28 20:46                                                                               ` Jason Gunthorpe
2021-04-28 20:46                                                                               ` Jason Gunthorpe
2021-05-04 16:22                                                                               ` Jacob Pan
2021-05-04 16:22                                                                                 ` Jacob Pan
2021-05-04 16:22                                                                                 ` Jacob Pan
2021-05-04 16:31                                                                                 ` Jason Gunthorpe
2021-05-04 16:31                                                                                   ` Jason Gunthorpe
2021-05-04 16:31                                                                                   ` Jason Gunthorpe
2021-05-08  5:46                                                                               ` Tian, Kevin
2021-05-08  5:46                                                                                 ` Tian, Kevin
2021-05-08  5:46                                                                                 ` Tian, Kevin
2021-05-04 15:41                                                                             ` Jacob Pan
2021-05-04 15:41                                                                               ` Jacob Pan
2021-05-04 15:41                                                                               ` Jacob Pan
2021-05-04 18:00                                                                               ` Jason Gunthorpe
2021-05-04 18:00                                                                                 ` Jason Gunthorpe
2021-05-04 18:00                                                                                 ` Jason Gunthorpe
2021-05-04 22:11                                                                                 ` Jacob Pan
2021-05-04 22:11                                                                                   ` Jacob Pan
2021-05-04 22:11                                                                                   ` Jacob Pan
2021-05-04 23:15                                                                                   ` Jason Gunthorpe
2021-05-04 23:15                                                                                     ` Jason Gunthorpe
2021-05-04 23:15                                                                                     ` Jason Gunthorpe
2021-05-05 17:22                                                                                     ` Jacob Pan
2021-05-05 17:22                                                                                       ` Jacob Pan
2021-05-05 17:22                                                                                       ` Jacob Pan
2021-05-05 18:00                                                                                       ` Jason Gunthorpe
2021-05-05 18:00                                                                                         ` Jason Gunthorpe
2021-05-05 18:00                                                                                         ` Jason Gunthorpe
2021-05-05 20:04                                                                                         ` Jacob Pan
2021-05-05 20:04                                                                                           ` Jacob Pan
2021-05-05 20:04                                                                                           ` Jacob Pan
2021-05-05 22:21                                                                                           ` Jason Gunthorpe
2021-05-05 22:21                                                                                             ` Jason Gunthorpe
2021-05-05 22:21                                                                                             ` Jason Gunthorpe
2021-05-05 23:23                                                                                             ` Raj, Ashok
2021-05-05 23:23                                                                                               ` Raj, Ashok
2021-05-05 23:23                                                                                               ` Raj, Ashok
2021-05-06 12:22                                                                                               ` Jason Gunthorpe
2021-05-06 12:22                                                                                                 ` Jason Gunthorpe
2021-05-06 12:22                                                                                                 ` Jason Gunthorpe
2021-05-08  7:06                                                                                             ` Liu Yi L
2021-05-08  7:06                                                                                               ` Liu Yi L
2021-05-08  7:06                                                                                               ` Liu Yi L
2021-05-06  7:23                                                                                           ` Jean-Philippe Brucker
2021-05-06  7:23                                                                                             ` Jean-Philippe Brucker
2021-05-06  7:23                                                                                             ` Jean-Philippe Brucker
2021-05-06 12:27                                                                                             ` Jason Gunthorpe
2021-05-06 12:27                                                                                               ` Jason Gunthorpe
2021-05-06 12:27                                                                                               ` Jason Gunthorpe
2021-05-06 16:32                                                                                               ` Raj, Ashok
2021-05-06 16:32                                                                                                 ` Raj, Ashok
2021-05-06 16:32                                                                                                 ` Raj, Ashok
2021-05-07 17:20                                                                                                 ` Jason Gunthorpe
2021-05-07 17:20                                                                                                   ` Jason Gunthorpe
2021-05-07 17:20                                                                                                   ` Jason Gunthorpe
2021-05-07 18:14                                                                                                   ` Raj, Ashok
2021-05-07 18:14                                                                                                     ` Raj, Ashok
2021-05-07 18:14                                                                                                     ` Raj, Ashok
2021-05-07 18:20                                                                                                     ` Jason Gunthorpe
2021-05-07 18:20                                                                                                       ` Jason Gunthorpe
2021-05-07 18:20                                                                                                       ` Jason Gunthorpe
2021-05-07 19:23                                                                                                       ` Raj, Ashok
2021-05-07 19:23                                                                                                         ` Raj, Ashok
2021-05-07 19:23                                                                                                         ` Raj, Ashok
2021-05-07 19:28                                                                                                         ` Jason Gunthorpe
2021-05-07 19:28                                                                                                           ` Jason Gunthorpe
2021-05-07 19:28                                                                                                           ` Jason Gunthorpe
2021-05-07 22:15                                                                                                           ` Jacob Pan
2021-05-07 22:15                                                                                                             ` Jacob Pan
2021-05-07 22:15                                                                                                             ` Jacob Pan
2021-05-08  9:56                                                                                                 ` Tian, Kevin
2021-05-08  9:56                                                                                                   ` Tian, Kevin
2021-05-08  9:56                                                                                                   ` Tian, Kevin
2021-05-10 12:37                                                                                                   ` Jason Gunthorpe
2021-05-10 12:37                                                                                                     ` Jason Gunthorpe
2021-05-10 12:37                                                                                                     ` Jason Gunthorpe
2021-05-10 15:25                                                                                                     ` Raj, Ashok
2021-05-10 15:25                                                                                                       ` Raj, Ashok
2021-05-10 15:25                                                                                                       ` Raj, Ashok
2021-05-10 15:31                                                                                                       ` Jason Gunthorpe
2021-05-10 15:31                                                                                                         ` Jason Gunthorpe
2021-05-10 15:31                                                                                                         ` Jason Gunthorpe
2021-05-10 16:22                                                                                                         ` Raj, Ashok
2021-05-10 16:22                                                                                                           ` Raj, Ashok
2021-05-10 16:22                                                                                                           ` Raj, Ashok
2021-05-10 16:39                                                                                                           ` Jason Gunthorpe
2021-05-10 16:39                                                                                                             ` Jason Gunthorpe
2021-05-10 16:39                                                                                                             ` Jason Gunthorpe
2021-05-10 22:28                                                                                                             ` Jacob Pan
2021-05-10 22:28                                                                                                               ` Jacob Pan
2021-05-10 22:28                                                                                                               ` Jacob Pan
2021-05-10 23:45                                                                                                               ` Jason Gunthorpe
2021-05-10 23:45                                                                                                                 ` Jason Gunthorpe
2021-05-10 23:45                                                                                                                 ` Jason Gunthorpe
2021-05-11  3:56                                                                                                                 ` Jacob Pan
2021-05-11  3:56                                                                                                                   ` Jacob Pan
2021-05-11  3:56                                                                                                                   ` Jacob Pan
2021-05-11  9:10                                                                                                     ` Tian, Kevin
2021-05-11  9:10                                                                                                       ` Tian, Kevin
2021-05-11  9:10                                                                                                       ` Tian, Kevin
2021-05-11 13:24                                                                                                       ` Liu Yi L
2021-05-11 13:24                                                                                                         ` Liu Yi L
2021-05-11 13:24                                                                                                         ` Liu Yi L
2021-05-11 22:52                                                                                                         ` Tian, Kevin
2021-05-11 22:52                                                                                                           ` Tian, Kevin
2021-05-11 22:52                                                                                                           ` Tian, Kevin
2021-05-11 14:38                                                                                                       ` Jason Gunthorpe
2021-05-11 14:38                                                                                                         ` Jason Gunthorpe
2021-05-11 14:38                                                                                                         ` Jason Gunthorpe
2021-05-11 22:51                                                                                                         ` Tian, Kevin
2021-05-11 22:51                                                                                                           ` Tian, Kevin
2021-05-11 22:51                                                                                                           ` Tian, Kevin
2021-05-11 23:39                                                                                                           ` Jason Gunthorpe
2021-05-11 23:39                                                                                                             ` Jason Gunthorpe
2021-05-12  0:21                                                                                                             ` Tian, Kevin
2021-05-12  0:21                                                                                                               ` Tian, Kevin
2021-05-12  0:21                                                                                                               ` Tian, Kevin
2021-05-12  0:25                                                                                                               ` Jason Gunthorpe
2021-05-12  0:25                                                                                                                 ` Jason Gunthorpe
2021-05-12  0:40                                                                                                                 ` Tian, Kevin
2021-05-12  0:40                                                                                                                   ` Tian, Kevin
2021-05-12  0:40                                                                                                                   ` Tian, Kevin
2021-04-29  8:54                                                                       ` Auger Eric
2021-04-29  8:54                                                                         ` Auger Eric
2021-04-29  8:54                                                                         ` Auger Eric
2021-04-29  8:55                                                                   ` Auger Eric
2021-04-29  8:55                                                                     ` Auger Eric
2021-04-29  8:55                                                                     ` Auger Eric
2021-04-29 13:26                                                                   ` Auger Eric
2021-04-29 13:26                                                                     ` Auger Eric
2021-04-29 13:26                                                                     ` Auger Eric
2021-04-29 20:04                                                                     ` Jason Gunthorpe
2021-04-29 20:04                                                                       ` Jason Gunthorpe
2021-04-29 20:04                                                                       ` Jason Gunthorpe
2021-05-05  9:10                                                                       ` Auger Eric
2021-05-05  9:10                                                                         ` Auger Eric
2021-05-05  9:10                                                                         ` Auger Eric
2021-04-22 17:13                                                               ` Alex Williamson
2021-04-22 17:13                                                                 ` Alex Williamson
2021-04-22 17:13                                                                 ` Alex Williamson
2021-04-22 17:57                                                                 ` Jason Gunthorpe
2021-04-22 17:57                                                                   ` Jason Gunthorpe
2021-04-22 17:57                                                                   ` Jason Gunthorpe
2021-04-22 19:37                                                                   ` Alex Williamson
2021-04-22 19:37                                                                     ` Alex Williamson
2021-04-22 19:37                                                                     ` Alex Williamson
2021-04-22 20:00                                                                     ` Jason Gunthorpe
2021-04-22 20:00                                                                       ` Jason Gunthorpe
2021-04-22 20:00                                                                       ` Jason Gunthorpe
2021-04-22 22:38                                                                       ` Alex Williamson
2021-04-22 22:38                                                                         ` Alex Williamson
2021-04-22 22:38                                                                         ` Alex Williamson
2021-04-22 23:39                                                                         ` Jason Gunthorpe
2021-04-22 23:39                                                                           ` Jason Gunthorpe
2021-04-22 23:39                                                                           ` Jason Gunthorpe
2021-04-23 10:31                                                                           ` Tian, Kevin
2021-04-23 10:31                                                                             ` Tian, Kevin
2021-04-23 10:31                                                                             ` Tian, Kevin
2021-04-23 11:57                                                                             ` Jason Gunthorpe
2021-04-23 11:57                                                                               ` Jason Gunthorpe
2021-04-23 11:57                                                                               ` Jason Gunthorpe
2021-04-27  5:11                                                                             ` David Gibson
2021-04-27  5:11                                                                               ` David Gibson
2021-04-27  5:11                                                                               ` David Gibson
2021-04-27 16:39                                                                               ` Jason Gunthorpe
2021-04-27 16:39                                                                                 ` Jason Gunthorpe
2021-04-27 16:39                                                                                 ` Jason Gunthorpe
2021-04-28  0:49                                                                                 ` David Gibson
2021-04-28  0:49                                                                                   ` David Gibson
2021-04-28  0:49                                                                                   ` David Gibson
2021-04-23 16:38                                                                           ` Alex Williamson
2021-04-23 16:38                                                                             ` Alex Williamson
2021-04-23 16:38                                                                             ` Alex Williamson
2021-04-23 22:28                                                                             ` Jason Gunthorpe
2021-04-23 22:28                                                                               ` Jason Gunthorpe
2021-04-23 22:28                                                                               ` Jason Gunthorpe
2021-04-27  5:15                                                                               ` David Gibson
2021-04-27  5:15                                                                                 ` David Gibson
2021-04-27  5:15                                                                                 ` David Gibson
2021-04-27  5:08                                                                           ` David Gibson
2021-04-27  5:08                                                                             ` David Gibson
2021-04-27  5:08                                                                             ` David Gibson
2021-04-27 17:12                                                                             ` Jason Gunthorpe
2021-04-27 17:12                                                                               ` Jason Gunthorpe
2021-04-27 17:12                                                                               ` Jason Gunthorpe
2021-04-28  0:58                                                                               ` David Gibson
2021-04-28  0:58                                                                                 ` David Gibson
2021-04-28  0:58                                                                                 ` David Gibson
2021-04-28 14:56                                                                                 ` Jason Gunthorpe
2021-04-28 14:56                                                                                   ` Jason Gunthorpe
2021-04-28 14:56                                                                                   ` Jason Gunthorpe
2021-04-29  3:04                                                                                   ` David Gibson
2021-04-29  3:04                                                                                     ` David Gibson
2021-04-29  3:04                                                                                     ` David Gibson
2021-05-03 16:15                                                                                     ` Jason Gunthorpe
2021-05-03 16:15                                                                                       ` Jason Gunthorpe
2021-05-03 16:15                                                                                       ` Jason Gunthorpe
2021-05-13  5:48                                                                                       ` David Gibson
2021-05-13  5:48                                                                                         ` David Gibson
2021-05-13  5:48                                                                                         ` David Gibson
2021-05-13 13:59                                                                                         ` Jason Gunthorpe
2021-05-13 13:59                                                                                           ` Jason Gunthorpe
2021-05-13 13:59                                                                                           ` Jason Gunthorpe
2021-05-24  7:52                                                                                           ` David Gibson
2021-05-24  7:52                                                                                             ` David Gibson
2021-05-24  7:52                                                                                             ` David Gibson
2021-05-24 23:37                                                                                             ` Jason Gunthorpe
2021-05-24 23:37                                                                                               ` Jason Gunthorpe
2021-05-24 23:37                                                                                               ` Jason Gunthorpe
2021-05-25 19:26                                                                                               ` Kirti Wankhede
2021-05-25 19:26                                                                                                 ` Kirti Wankhede
2021-05-25 19:26                                                                                                 ` Kirti Wankhede
2021-05-25 19:52                                                                                                 ` Jason Gunthorpe
2021-05-25 19:52                                                                                                   ` Jason Gunthorpe
2021-05-25 19:52                                                                                                   ` Jason Gunthorpe
2021-05-25 21:18                                                                                                   ` Kirti Wankhede
2021-05-25 21:18                                                                                                     ` Kirti Wankhede
2021-05-25 21:18                                                                                                     ` Kirti Wankhede
2021-05-27  5:00                                                                                                     ` David Gibson
2021-05-27  5:00                                                                                                       ` David Gibson
2021-05-27  5:00                                                                                                       ` David Gibson
2021-05-27 18:25                                                                                                       ` Kirti Wankhede
2021-05-27 18:25                                                                                                         ` Kirti Wankhede
2021-05-27 18:25                                                                                                         ` Kirti Wankhede
2021-06-01  3:45                                                                                                         ` David Gibson
2021-06-01  3:45                                                                                                           ` David Gibson
2021-06-01  3:45                                                                                                           ` David Gibson
2021-05-27  4:58                                                                                                   ` David Gibson
2021-05-27  4:58                                                                                                     ` David Gibson
2021-05-27  4:58                                                                                                     ` David Gibson
2021-05-27 18:48                                                                                                     ` Jason Gunthorpe
2021-05-27 18:48                                                                                                       ` Jason Gunthorpe
2021-05-27 18:48                                                                                                       ` Jason Gunthorpe
2021-06-01  4:03                                                                                                       ` David Gibson
2021-06-01  4:03                                                                                                         ` David Gibson
2021-06-01  4:03                                                                                                         ` David Gibson
2021-06-01 12:57                                                                                                         ` Jason Gunthorpe
2021-06-01 12:57                                                                                                           ` Jason Gunthorpe
2021-06-01 12:57                                                                                                           ` Jason Gunthorpe
2021-06-08  0:44                                                                                                           ` David Gibson
2021-06-08  0:44                                                                                                             ` David Gibson
2021-06-08  0:44                                                                                                             ` David Gibson
2021-06-08 18:34                                                                                                             ` Jason Gunthorpe
2021-06-08 18:34                                                                                                               ` Jason Gunthorpe
2021-06-08 18:34                                                                                                               ` Jason Gunthorpe
2021-05-25 22:52                                                                                                 ` Alex Williamson
2021-05-25 22:52                                                                                                   ` Alex Williamson
2021-05-25 22:52                                                                                                   ` Alex Williamson
2021-05-26 18:10                                                                                                   ` Kirti Wankhede
2021-05-26 18:10                                                                                                     ` Kirti Wankhede
2021-05-26 18:10                                                                                                     ` Kirti Wankhede
2021-05-26 18:59                                                                                                     ` Alex Williamson
2021-05-26 18:59                                                                                                       ` Alex Williamson
2021-05-26 18:59                                                                                                       ` Alex Williamson
2021-05-26 19:13                                                                                                       ` Jason Gunthorpe
2021-05-26 19:13                                                                                                         ` Jason Gunthorpe
2021-05-26 19:13                                                                                                         ` Jason Gunthorpe
2021-05-27  4:53                                                                                               ` David Gibson
2021-05-27  4:53                                                                                                 ` David Gibson
2021-05-27  4:53                                                                                                 ` David Gibson
2021-05-27 19:06                                                                                                 ` Jason Gunthorpe
2021-05-27 19:06                                                                                                   ` Jason Gunthorpe
2021-05-27 19:06                                                                                                   ` Jason Gunthorpe
2021-06-01  4:27                                                                                                   ` David Gibson
2021-06-01  4:27                                                                                                     ` David Gibson
2021-06-01  4:27                                                                                                     ` David Gibson
2021-04-28  6:58                                                                               ` Tian, Kevin
2021-04-28  6:58                                                                                 ` Tian, Kevin
2021-04-28  6:58                                                                                 ` Tian, Kevin
2021-05-04 17:12                                                                                 ` Jason Gunthorpe
2021-05-04 17:12                                                                                   ` Jason Gunthorpe
2021-05-04 17:12                                                                                   ` Jason Gunthorpe
2021-05-07  8:09                                                                                   ` Tian, Kevin
2021-05-07  8:09                                                                                     ` Tian, Kevin
2021-05-07  8:09                                                                                     ` Tian, Kevin
2021-04-28  7:47                                                                               ` Tian, Kevin
2021-04-28  7:47                                                                                 ` Tian, Kevin
2021-04-28  7:47                                                                                 ` Tian, Kevin
2021-04-28 18:41                                                                                 ` Jason Gunthorpe
2021-04-28 18:41                                                                                   ` Jason Gunthorpe
2021-04-28 18:41                                                                                   ` Jason Gunthorpe
2021-04-27  4:50                                                                 ` David Gibson
2021-04-27  4:50                                                                   ` David Gibson
2021-04-27  4:50                                                                   ` David Gibson
2021-04-27 17:24                                                                   ` Jason Gunthorpe
2021-04-27 17:24                                                                     ` Jason Gunthorpe
2021-04-27 17:24                                                                     ` Jason Gunthorpe
2021-04-28  1:23                                                                     ` David Gibson
2021-04-28  1:23                                                                       ` David Gibson
2021-04-28  1:23                                                                       ` David Gibson
2021-04-29  0:21                                                                       ` Jason Gunthorpe
2021-04-29  0:21                                                                         ` Jason Gunthorpe
2021-04-29  0:21                                                                         ` Jason Gunthorpe
2021-04-29  3:20                                                                         ` David Gibson
2021-04-29  3:20                                                                           ` David Gibson
2021-04-29  3:20                                                                           ` David Gibson
2021-05-03 16:05                                                                           ` Jason Gunthorpe
2021-05-03 16:05                                                                             ` Jason Gunthorpe
2021-05-03 16:05                                                                             ` Jason Gunthorpe
2021-05-04  3:54                                                                             ` David Gibson
2021-05-04  3:54                                                                               ` David Gibson
2021-05-04  3:54                                                                               ` David Gibson
2021-05-04 18:15                                                                               ` Jason Gunthorpe
2021-05-04 18:15                                                                                 ` Jason Gunthorpe
2021-05-04 18:15                                                                                 ` Jason Gunthorpe
2021-05-05  4:28                                                                                 ` Alexey Kardashevskiy
2021-05-05  4:28                                                                                   ` Alexey Kardashevskiy
2021-05-05  4:28                                                                                   ` Alexey Kardashevskiy
2021-05-05 16:39                                                                                   ` Jason Gunthorpe
2021-05-05 16:39                                                                                     ` Jason Gunthorpe
2021-05-05 16:39                                                                                     ` Jason Gunthorpe
2021-05-13  6:07                                                                                     ` David Gibson
2021-05-13  6:07                                                                                       ` David Gibson
2021-05-13  6:07                                                                                       ` David Gibson
2021-05-13 13:50                                                                                       ` Jason Gunthorpe
2021-05-13 13:50                                                                                         ` Jason Gunthorpe
2021-05-13 13:50                                                                                         ` Jason Gunthorpe
2021-05-24  7:56                                                                                         ` David Gibson
2021-05-24  7:56                                                                                           ` David Gibson
2021-05-24  7:56                                                                                           ` David Gibson
2021-05-13  6:01                                                                                 ` David Gibson
2021-05-13  6:01                                                                                   ` David Gibson
2021-05-13  6:01                                                                                   ` David Gibson
2021-05-13  6:52                                                                                   ` Tian, Kevin
2021-05-13  6:52                                                                                     ` Tian, Kevin
2021-05-13  6:52                                                                                     ` Tian, Kevin
2021-05-13 13:47                                                                                   ` Jason Gunthorpe
2021-05-13 13:47                                                                                     ` Jason Gunthorpe
2021-05-13 13:47                                                                                     ` Jason Gunthorpe
2021-04-22 12:55                                                             ` Liu Yi L
2021-04-22 12:55                                                               ` Liu Yi L
2021-04-16 13:38                                               ` Auger Eric
2021-04-16 13:38                                                 ` Auger Eric
2021-04-16 13:38                                                 ` Auger Eric
2021-04-16 14:05                                                 ` Jason Gunthorpe
2021-04-16 14:05                                                   ` Jason Gunthorpe
2021-04-16 14:05                                                   ` Jason Gunthorpe
2021-04-16 14:26                                                   ` Auger Eric
2021-04-16 14:26                                                     ` Auger Eric
2021-04-16 14:26                                                     ` Auger Eric
2021-04-16 14:34                                                     ` Jason Gunthorpe
2021-04-16 14:34                                                       ` Jason Gunthorpe
2021-04-16 14:34                                                       ` Jason Gunthorpe
2021-04-16 15:00                                                       ` Auger Eric
2021-04-16 15:00                                                         ` Auger Eric
2021-04-16 15:00                                                         ` Auger Eric
2021-04-01 11:46                               ` Jason Gunthorpe
2021-04-01 11:46                                 ` Jason Gunthorpe
2021-04-01 11:46                                 ` Jason Gunthorpe
2021-04-01 13:10                                 ` Liu, Yi L
2021-04-01 13:10                                   ` Liu, Yi L
2021-04-01 13:10                                   ` Liu, Yi L
2021-04-01 13:15                                   ` Jason Gunthorpe
2021-04-01 13:15                                     ` Jason Gunthorpe
2021-04-01 13:15                                     ` Jason Gunthorpe
2021-04-01 13:43                                     ` Liu, Yi L
2021-04-01 13:43                                       ` Liu, Yi L
2021-04-01 13:43                                       ` Liu, Yi L
2021-04-01 13:46                                       ` Jason Gunthorpe
2021-04-01 13:46                                         ` Jason Gunthorpe
2021-04-01 13:46                                         ` Jason Gunthorpe
2021-04-02  7:58                                         ` Tian, Kevin
2021-04-02  7:58                                           ` Tian, Kevin
2021-04-02  7:58                                           ` Tian, Kevin
2021-04-05 23:39                                           ` Jason Gunthorpe
2021-04-05 23:39                                             ` Jason Gunthorpe
2021-04-05 23:39                                             ` Jason Gunthorpe
2021-04-06  1:02                                             ` Tian, Kevin
2021-04-06  1:02                                               ` Tian, Kevin
2021-04-06  1:02                                               ` Tian, Kevin
2021-04-06 12:21                                               ` Jason Gunthorpe
2021-04-06 12:21                                                 ` Jason Gunthorpe
2021-04-06 12:21                                                 ` Jason Gunthorpe
2021-04-07  2:23                                                 ` Tian, Kevin
2021-04-07  2:23                                                   ` Tian, Kevin
2021-04-07  2:23                                                   ` Tian, Kevin
     [not found]                                             ` <MWHPR11MB188628BDB37A4EE36F3D99338C769@MWHPR11MB1886.namprd11.prod.outlook.com>
2021-04-06  2:08                                               ` Tian, Kevin
2021-04-06  2:08                                                 ` Tian, Kevin
2021-04-06  2:08                                                 ` Tian, Kevin
2021-04-02 10:01                                         ` Tian, Kevin
2021-04-02 10:01                                           ` Tian, Kevin
2021-04-02 10:01                                           ` Tian, Kevin
2021-04-02  8:22                         ` Tian, Kevin
2021-04-02  8:22                           ` Tian, Kevin
2021-04-02  8:22                           ` Tian, Kevin
2021-04-05 23:42                           ` Jason Gunthorpe
2021-04-05 23:42                             ` Jason Gunthorpe
2021-04-05 23:42                             ` Jason Gunthorpe
2021-04-06  1:27                             ` Tian, Kevin
2021-04-06  1:27                               ` Tian, Kevin
2021-04-06  1:27                               ` Tian, Kevin
2021-04-06 12:34                               ` Jason Gunthorpe
2021-04-06 12:34                                 ` Jason Gunthorpe
2021-04-07  2:08                                 ` Tian, Kevin
2021-04-07  2:08                                   ` Tian, Kevin
2021-04-07  2:08                                   ` Tian, Kevin
2021-04-07 12:20                                   ` Jason Gunthorpe
2021-04-07 12:20                                     ` Jason Gunthorpe
2021-04-07 12:20                                     ` Jason Gunthorpe
2021-04-07 23:50                                     ` Tian, Kevin
2021-04-07 23:50                                       ` Tian, Kevin
2021-04-07 23:50                                       ` Tian, Kevin
2021-04-08 11:41                                       ` Jason Gunthorpe
2021-04-08 11:41                                         ` Jason Gunthorpe
2021-04-08 11:41                                         ` Jason Gunthorpe
2021-04-06  1:35                             ` Jason Wang
2021-04-06  1:35                               ` Jason Wang
2021-04-06  1:35                               ` Jason Wang
2021-04-06 12:42                               ` Jason Gunthorpe
2021-04-06 12:42                                 ` Jason Gunthorpe
2021-04-06 12:42                                 ` Jason Gunthorpe
2021-04-07  2:06                                 ` Jason Wang
2021-04-07  2:06                                   ` Jason Wang
2021-04-07  2:06                                   ` Jason Wang
2021-04-07  8:17                                 ` Tian, Kevin
2021-04-07  8:17                                   ` Tian, Kevin
2021-04-07  8:17                                   ` Tian, Kevin
2021-04-07 11:58                                   ` Jason Gunthorpe
2021-04-07 11:58                                     ` Jason Gunthorpe
2021-04-07 11:58                                     ` Jason Gunthorpe
2021-04-07 18:43                                   ` Jean-Philippe Brucker
2021-04-07 18:43                                     ` Jean-Philippe Brucker
2021-04-07 18:43                                     ` Jean-Philippe Brucker
2021-04-07 19:36                                     ` Jason Gunthorpe
2021-04-07 19:36                                       ` Jason Gunthorpe
2021-04-07 19:36                                       ` Jason Gunthorpe
2021-04-08  9:37                                       ` Jean-Philippe Brucker
2021-04-08  9:37                                         ` Jean-Philippe Brucker
2021-03-30  2:24                     ` Tian, Kevin
2021-03-30  2:24                       ` Tian, Kevin
2021-03-30  2:24                       ` Tian, Kevin
2021-03-30 13:24                       ` Jason Gunthorpe
2021-03-30 13:24                         ` Jason Gunthorpe
2021-03-30 13:24                         ` Jason Gunthorpe
2021-03-30  4:14                     ` Tian, Kevin
2021-03-30  4:14                       ` Tian, Kevin
2021-03-30  4:14                       ` Tian, Kevin
2021-03-30 13:27                       ` Jason Gunthorpe
2021-03-30 13:27                         ` Jason Gunthorpe
2021-03-30 13:27                         ` Jason Gunthorpe
2021-03-31  7:41                         ` Liu, Yi L
2021-03-31  7:41                           ` Liu, Yi L
2021-03-31  7:41                           ` Liu, Yi L
2021-03-31 12:38                           ` Jason Gunthorpe
2021-03-31 12:38                             ` Jason Gunthorpe
2021-03-31 12:38                             ` Jason Gunthorpe
2021-03-31 23:46                             ` Jacob Pan
2021-03-31 23:46                               ` Jacob Pan
2021-03-31 23:46                               ` Jacob Pan
2021-04-01  0:37                               ` Jason Gunthorpe
2021-04-01  0:37                                 ` Jason Gunthorpe
2021-04-01  0:37                                 ` Jason Gunthorpe
2021-04-01 17:23                                 ` Jacob Pan
2021-04-01 17:23                                   ` Jacob Pan
2021-04-01 17:23                                   ` Jacob Pan
2021-04-01 17:26                                   ` Jason Gunthorpe
2021-04-01 17:26                                     ` Jason Gunthorpe
2021-04-01 17:26                                     ` Jason Gunthorpe
2021-03-19 17:14       ` Jacob Pan
2021-03-19 17:14         ` Jacob Pan
2021-03-19 17:14         ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 06/18] iommu/ioasid: Add free function and states Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 07/18] iommu/ioasid: Add ioasid_set iterator helper functions Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 08/18] iommu/ioasid: Introduce ioasid_set private ID Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 09/18] iommu/ioasid: Introduce notification APIs Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 10/18] iommu/ioasid: Support mm token type ioasid_set notifications Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 11/18] iommu/ioasid: Add ownership check in guest bind Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 12/18] iommu/vt-d: Remove mm reference for guest SVA Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 13/18] iommu/ioasid: Add a workqueue for cleanup work Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [PATCH V4 14/18] iommu/vt-d: Listen to IOASID notifications Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [RFC PATCH 15/18] cgroup: Introduce ioasids controller Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-03-03 15:44   ` Tejun Heo
2021-03-03 15:44     ` Tejun Heo
2021-03-03 21:17     ` Jacob Pan
2021-03-03 21:17       ` Jacob Pan
2021-03-03 21:17       ` Jacob Pan
2021-03-04  0:02       ` Jacob Pan
2021-03-04  0:02         ` Jacob Pan
2021-03-04  0:02         ` Jacob Pan
2021-03-04  0:23         ` Jason Gunthorpe
2021-03-04  0:23           ` Jason Gunthorpe
2021-03-04  0:23           ` Jason Gunthorpe
2021-03-04  9:49         ` Jean-Philippe Brucker
2021-03-04  9:49           ` Jean-Philippe Brucker
2021-03-04  9:49           ` Jean-Philippe Brucker
2021-03-04 17:46           ` Jacob Pan
2021-03-04 17:46             ` Jacob Pan
2021-03-04 17:46             ` Jacob Pan
2021-03-04 17:54             ` Jason Gunthorpe
2021-03-04 17:54               ` Jason Gunthorpe
2021-03-04 17:54               ` Jason Gunthorpe
2021-03-04 19:01               ` Jacob Pan
2021-03-04 19:01                 ` Jacob Pan
2021-03-04 19:01                 ` Jacob Pan
2021-03-04 19:02                 ` Jason Gunthorpe
2021-03-04 19:02                   ` Jason Gunthorpe
2021-03-04 19:02                   ` Jason Gunthorpe
2021-03-04 21:28                   ` Jacob Pan
2021-03-04 21:28                     ` Jacob Pan
2021-03-04 21:28                     ` Jacob Pan
2021-03-05  8:30             ` Jean-Philippe Brucker
2021-03-05  8:30               ` Jean-Philippe Brucker
2021-03-05  8:30               ` Jean-Philippe Brucker
2021-03-05 17:16               ` Jean-Philippe Brucker
2021-03-05 17:16                 ` Jean-Philippe Brucker
2021-03-05 17:16                 ` Jean-Philippe Brucker
2021-03-05 18:20               ` Jacob Pan
2021-03-05 18:20                 ` Jacob Pan
2021-03-05 18:20                 ` Jacob Pan
2021-02-27 22:01 ` [RFC PATCH 16/18] iommu/ioasid: Consult IOASIDs cgroup for allocation Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [RFC PATCH 17/18] docs: cgroup-v1: Add IOASIDs controller Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01 ` [RFC PATCH 18/18] ioasid: Add /dev/ioasid for userspace Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-02-27 22:01   ` Jacob Pan
2021-03-10 19:23   ` Jason Gunthorpe
2021-03-10 19:23     ` Jason Gunthorpe
2021-03-10 19:23     ` Jason Gunthorpe
2021-03-11 22:55     ` Jacob Pan
2021-03-11 22:55       ` Jacob Pan
2021-03-11 22:55       ` Jacob Pan
2021-03-12 14:54       ` Jason Gunthorpe
2021-03-12 14:54         ` Jason Gunthorpe
2021-03-12 14:54         ` Jason Gunthorpe
2021-03-02 12:58 ` [PATCH V4 00/18] IOASID extensions for guest SVA Liu, Yi L
2021-03-02 12:58   ` Liu, Yi L
2021-03-02 12:58   ` 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=BN6PR11MB4068B9036B42149B67B91596C37A9@BN6PR11MB4068.namprd11.prod.outlook.com \
    --to=yi.l.liu@intel.com \
    --cc=alex.williamson@redhat.com \
    --cc=ashok.raj@intel.com \
    --cc=baolu.lu@linux.intel.com \
    --cc=cgroups@vger.kernel.org \
    --cc=corbet@lwn.net \
    --cc=dave.jiang@intel.com \
    --cc=dwmw2@infradead.org \
    --cc=eric.auger@redhat.com \
    --cc=hannes@cmpxchg.org \
    --cc=hao.wu@intel.com \
    --cc=iommu@lists.linux-foundation.org \
    --cc=jacob.jun.pan@linux.intel.com \
    --cc=jean-philippe@linaro.com \
    --cc=jean-philippe@linaro.org \
    --cc=jgg@nvidia.com \
    --cc=joro@8bytes.org \
    --cc=kevin.tian@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lizefan@huawei.com \
    --cc=tj@kernel.org \
    /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.