All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Tian, Kevin" <kevin.tian@intel.com>
To: Alex Williamson <alex.williamson@redhat.com>
Cc: Jason Gunthorpe <jgg@nvidia.com>,
	Jean-Philippe Brucker <jean-philippe@linaro.org>,
	"Jiang, Dave" <dave.jiang@intel.com>,
	"Raj, Ashok" <ashok.raj@intel.com>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	Jonathan Corbet <corbet@lwn.net>,
	Robin Murphy <robin.murphy@arm.com>,
	LKML <linux-kernel@vger.kernel.org>,
	"iommu@lists.linux-foundation.org"
	<iommu@lists.linux-foundation.org>,
	David Gibson <david@gibson.dropbear.id.au>,
	Kirti Wankhede <kwankhede@nvidia.com>,
	"David Woodhouse" <dwmw2@infradead.org>,
	Jason Wang <jasowang@redhat.com>
Subject: RE: [RFC] /dev/ioasid uAPI proposal
Date: Thu, 3 Jun 2021 05:18:28 +0000	[thread overview]
Message-ID: <MWHPR11MB18860BF3C9DA2B8688907D508C3C9@MWHPR11MB1886.namprd11.prod.outlook.com> (raw)
In-Reply-To: <20210602221455.79a42878.alex.williamson@redhat.com>

> From: Alex Williamson <alex.williamson@redhat.com>
> Sent: Thursday, June 3, 2021 12:15 PM
> 
> On Thu, 3 Jun 2021 03:22:27 +0000
> "Tian, Kevin" <kevin.tian@intel.com> wrote:
> 
> > > From: Alex Williamson <alex.williamson@redhat.com>
> > > Sent: Thursday, June 3, 2021 10:51 AM
> > >
> > > On Wed, 2 Jun 2021 19:45:36 -0300
> > > Jason Gunthorpe <jgg@nvidia.com> wrote:
> > >
> > > > On Wed, Jun 02, 2021 at 02:37:34PM -0600, Alex Williamson wrote:
> > > >
> > > > > Right.  I don't follow where you're jumping to relaying DMA_PTE_SNP
> > > > > from the guest page table... what page table?
> > > >
> > > > I see my confusion now, the phrasing in your earlier remark led me
> > > > think this was about allowing the no-snoop performance enhancement
> in
> > > > some restricted way.
> > > >
> > > > It is really about blocking no-snoop 100% of the time and then
> > > > disabling the dangerous wbinvd when the block is successful.
> > > >
> > > > Didn't closely read the kvm code :\
> > > >
> > > > If it was about allowing the optimization then I'd expect the guest to
> > > > enable no-snoopable regions via it's vIOMMU and realize them to the
> > > > hypervisor and plumb the whole thing through. Hence my remark about
> > > > the guest page tables..
> > > >
> > > > So really the test is just 'were we able to block it' ?
> > >
> > > Yup.  Do we really still consider that there's some performance benefit
> > > to be had by enabling a device to use no-snoop?  This seems largely a
> > > legacy thing.
> >
> > Yes, there is indeed performance benefit for device to use no-snoop,
> > e.g. 8K display and some imaging processing path, etc. The problem is
> > that the IOMMU for such devices is typically a different one from the
> > default IOMMU for most devices. This special IOMMU may not have
> > the ability of enforcing snoop on no-snoop PCI traffic then this fact
> > must be understood by KVM to do proper mtrr/pat/wbinvd virtualization
> > for such devices to work correctly.
> 
> The case where the IOMMU does not support snoop-control for such a
> device already works fine, we can't prevent no-snoop so KVM will
> emulate wbinvd.  The harder one is if we should opt to allow no-snoop
> even if the IOMMU does support snoop-control.

In other discussion we are leaning toward a per-device capability
reporting scheme through /dev/ioasid (or /dev/iommu as the new
name). It seems natural to also allow setting a capability e.g. no-
snoop for a device if underlying IOMMU driver allows it.

> 
> > > > > This support existed before mdev, IIRC we needed it for direct
> > > > > assignment of NVIDIA GPUs.
> > > >
> > > > Probably because they ignored the disable no-snoop bits in the control
> > > > block, or reset them in some insane way to "fix" broken bioses and
> > > > kept using it even though by all rights qemu would have tried hard to
> > > > turn it off via the config space. Processing no-snoop without a
> > > > working wbinvd would be fatal. Yeesh
> > > >
> > > > But Ok, back the /dev/ioasid. This answers a few lingering questions I
> > > > had..
> > > >
> > > > 1) Mixing IOMMU_CAP_CACHE_COHERENCY
> > > and !IOMMU_CAP_CACHE_COHERENCY
> > > >    domains.
> > > >
> > > >    This doesn't actually matter. If you mix them together then kvm
> > > >    will turn on wbinvd anyhow, so we don't need to use the
> DMA_PTE_SNP
> > > >    anywhere in this VM.
> > > >
> > > >    This if two IOMMU's are joined together into a single /dev/ioasid
> > > >    then we can just make them both pretend to be
> > > >    !IOMMU_CAP_CACHE_COHERENCY and both not set IOMMU_CACHE.
> > >
> > > Yes and no.  Yes, if any domain is !IOMMU_CAP_CACHE_COHERENCY
> then
> > > we
> > > need to emulate wbinvd, but no we'll use IOMMU_CACHE any time it's
> > > available based on the per domain support available.  That gives us the
> > > most consistent behavior, ie. we don't have VMs emulating wbinvd
> > > because they used to have a device attached where the domain required
> > > it and we can't atomically remap with new flags to perform the same as
> > > a VM that never had that device attached in the first place.
> > >
> > > > 2) How to fit this part of kvm in some new /dev/ioasid world
> > > >
> > > >    What we want to do here is iterate over every ioasid associated
> > > >    with the group fd that is passed into kvm.
> > >
> > > Yeah, we need some better names, binding a device to an ioasid (fd) but
> > > then attaching a device to an allocated ioasid (non-fd)... I assume
> > > you're talking about the latter ioasid.
> > >
> > > >    Today the group fd has a single container which specifies the
> > > >    single ioasid so this is being done trivially.
> > > >
> > > >    To reorg we want to get the ioasid from the device not the
> > > >    group (see my note to David about the groups vs device rational)
> > > >
> > > >    This is just iterating over each vfio_device in the group and
> > > >    querying the ioasid it is using.
> > >
> > > The IOMMU API group interfaces is largely iommu_group_for_each_dev()
> > > anyway, we still need to account for all the RIDs and aliases of a
> > > group.
> > >
> > > >    Or perhaps more directly: an op attaching the vfio_device to the
> > > >    kvm and having some simple helper
> > > >          '(un)register ioasid with kvm (kvm, ioasid)'
> > > >    that the vfio_device driver can call that just sorts this out.
> > >
> > > We could almost eliminate the device notion altogether here, use an
> > > ioasidfd_for_each_ioasid() but we really want a way to trigger on each
> > > change to the composition of the device set for the ioasid, which is
> > > why we currently do it on addition or removal of a group, where the
> > > group has a consistent set of IOMMU properties.  Register a notifier
> > > callback via the ioasidfd?  Thanks,
> > >
> >
> > When discussing I/O page fault support in another thread, the consensus
> > is that an device handle will be registered (by user) or allocated (return
> > to user) in /dev/ioasid when binding the device to ioasid fd. From this
> > angle we can register {ioasid_fd, device_handle} to KVM and then call
> > something like ioasidfd_device_is_coherent() to get the property.
> > Anyway the coherency is a per-device property which is not changed
> > by how many I/O page tables are attached to it.
> 
> The mechanics are different, but this is pretty similar in concept to
> KVM learning coherence using the groupfd today.  Do we want to
> compromise on kernel control of wbinvd emulation to allow userspace to
> make such decisions?  Ownership of a device might be reason enough to
> allow the user that privilege.  Thanks,
> 

I think so. In the end it's still decided by the underlying IOMMU driver. 
If the IOMMU driver doesn't allow user to opt for no-snoop, it's exactly 
same as today's groupfd approach. Otherwise an user-opted policy 
implies that the decision is delegated to userspace. 

Thanks
Kevin

WARNING: multiple messages have this Message-ID (diff)
From: "Tian, Kevin" <kevin.tian@intel.com>
To: Alex Williamson <alex.williamson@redhat.com>
Cc: Jean-Philippe Brucker <jean-philippe@linaro.org>,
	"Jiang, Dave" <dave.jiang@intel.com>,
	"Raj,  Ashok" <ashok.raj@intel.com>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	Jonathan Corbet <corbet@lwn.net>,
	David Woodhouse <dwmw2@infradead.org>,
	Jason Wang <jasowang@redhat.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Kirti Wankhede <kwankhede@nvidia.com>,
	"iommu@lists.linux-foundation.org"
	<iommu@lists.linux-foundation.org>,
	Jason Gunthorpe <jgg@nvidia.com>,
	Robin Murphy <robin.murphy@arm.com>,
	David Gibson <david@gibson.dropbear.id.au>
Subject: RE: [RFC] /dev/ioasid uAPI proposal
Date: Thu, 3 Jun 2021 05:18:28 +0000	[thread overview]
Message-ID: <MWHPR11MB18860BF3C9DA2B8688907D508C3C9@MWHPR11MB1886.namprd11.prod.outlook.com> (raw)
In-Reply-To: <20210602221455.79a42878.alex.williamson@redhat.com>

> From: Alex Williamson <alex.williamson@redhat.com>
> Sent: Thursday, June 3, 2021 12:15 PM
> 
> On Thu, 3 Jun 2021 03:22:27 +0000
> "Tian, Kevin" <kevin.tian@intel.com> wrote:
> 
> > > From: Alex Williamson <alex.williamson@redhat.com>
> > > Sent: Thursday, June 3, 2021 10:51 AM
> > >
> > > On Wed, 2 Jun 2021 19:45:36 -0300
> > > Jason Gunthorpe <jgg@nvidia.com> wrote:
> > >
> > > > On Wed, Jun 02, 2021 at 02:37:34PM -0600, Alex Williamson wrote:
> > > >
> > > > > Right.  I don't follow where you're jumping to relaying DMA_PTE_SNP
> > > > > from the guest page table... what page table?
> > > >
> > > > I see my confusion now, the phrasing in your earlier remark led me
> > > > think this was about allowing the no-snoop performance enhancement
> in
> > > > some restricted way.
> > > >
> > > > It is really about blocking no-snoop 100% of the time and then
> > > > disabling the dangerous wbinvd when the block is successful.
> > > >
> > > > Didn't closely read the kvm code :\
> > > >
> > > > If it was about allowing the optimization then I'd expect the guest to
> > > > enable no-snoopable regions via it's vIOMMU and realize them to the
> > > > hypervisor and plumb the whole thing through. Hence my remark about
> > > > the guest page tables..
> > > >
> > > > So really the test is just 'were we able to block it' ?
> > >
> > > Yup.  Do we really still consider that there's some performance benefit
> > > to be had by enabling a device to use no-snoop?  This seems largely a
> > > legacy thing.
> >
> > Yes, there is indeed performance benefit for device to use no-snoop,
> > e.g. 8K display and some imaging processing path, etc. The problem is
> > that the IOMMU for such devices is typically a different one from the
> > default IOMMU for most devices. This special IOMMU may not have
> > the ability of enforcing snoop on no-snoop PCI traffic then this fact
> > must be understood by KVM to do proper mtrr/pat/wbinvd virtualization
> > for such devices to work correctly.
> 
> The case where the IOMMU does not support snoop-control for such a
> device already works fine, we can't prevent no-snoop so KVM will
> emulate wbinvd.  The harder one is if we should opt to allow no-snoop
> even if the IOMMU does support snoop-control.

In other discussion we are leaning toward a per-device capability
reporting scheme through /dev/ioasid (or /dev/iommu as the new
name). It seems natural to also allow setting a capability e.g. no-
snoop for a device if underlying IOMMU driver allows it.

> 
> > > > > This support existed before mdev, IIRC we needed it for direct
> > > > > assignment of NVIDIA GPUs.
> > > >
> > > > Probably because they ignored the disable no-snoop bits in the control
> > > > block, or reset them in some insane way to "fix" broken bioses and
> > > > kept using it even though by all rights qemu would have tried hard to
> > > > turn it off via the config space. Processing no-snoop without a
> > > > working wbinvd would be fatal. Yeesh
> > > >
> > > > But Ok, back the /dev/ioasid. This answers a few lingering questions I
> > > > had..
> > > >
> > > > 1) Mixing IOMMU_CAP_CACHE_COHERENCY
> > > and !IOMMU_CAP_CACHE_COHERENCY
> > > >    domains.
> > > >
> > > >    This doesn't actually matter. If you mix them together then kvm
> > > >    will turn on wbinvd anyhow, so we don't need to use the
> DMA_PTE_SNP
> > > >    anywhere in this VM.
> > > >
> > > >    This if two IOMMU's are joined together into a single /dev/ioasid
> > > >    then we can just make them both pretend to be
> > > >    !IOMMU_CAP_CACHE_COHERENCY and both not set IOMMU_CACHE.
> > >
> > > Yes and no.  Yes, if any domain is !IOMMU_CAP_CACHE_COHERENCY
> then
> > > we
> > > need to emulate wbinvd, but no we'll use IOMMU_CACHE any time it's
> > > available based on the per domain support available.  That gives us the
> > > most consistent behavior, ie. we don't have VMs emulating wbinvd
> > > because they used to have a device attached where the domain required
> > > it and we can't atomically remap with new flags to perform the same as
> > > a VM that never had that device attached in the first place.
> > >
> > > > 2) How to fit this part of kvm in some new /dev/ioasid world
> > > >
> > > >    What we want to do here is iterate over every ioasid associated
> > > >    with the group fd that is passed into kvm.
> > >
> > > Yeah, we need some better names, binding a device to an ioasid (fd) but
> > > then attaching a device to an allocated ioasid (non-fd)... I assume
> > > you're talking about the latter ioasid.
> > >
> > > >    Today the group fd has a single container which specifies the
> > > >    single ioasid so this is being done trivially.
> > > >
> > > >    To reorg we want to get the ioasid from the device not the
> > > >    group (see my note to David about the groups vs device rational)
> > > >
> > > >    This is just iterating over each vfio_device in the group and
> > > >    querying the ioasid it is using.
> > >
> > > The IOMMU API group interfaces is largely iommu_group_for_each_dev()
> > > anyway, we still need to account for all the RIDs and aliases of a
> > > group.
> > >
> > > >    Or perhaps more directly: an op attaching the vfio_device to the
> > > >    kvm and having some simple helper
> > > >          '(un)register ioasid with kvm (kvm, ioasid)'
> > > >    that the vfio_device driver can call that just sorts this out.
> > >
> > > We could almost eliminate the device notion altogether here, use an
> > > ioasidfd_for_each_ioasid() but we really want a way to trigger on each
> > > change to the composition of the device set for the ioasid, which is
> > > why we currently do it on addition or removal of a group, where the
> > > group has a consistent set of IOMMU properties.  Register a notifier
> > > callback via the ioasidfd?  Thanks,
> > >
> >
> > When discussing I/O page fault support in another thread, the consensus
> > is that an device handle will be registered (by user) or allocated (return
> > to user) in /dev/ioasid when binding the device to ioasid fd. From this
> > angle we can register {ioasid_fd, device_handle} to KVM and then call
> > something like ioasidfd_device_is_coherent() to get the property.
> > Anyway the coherency is a per-device property which is not changed
> > by how many I/O page tables are attached to it.
> 
> The mechanics are different, but this is pretty similar in concept to
> KVM learning coherence using the groupfd today.  Do we want to
> compromise on kernel control of wbinvd emulation to allow userspace to
> make such decisions?  Ownership of a device might be reason enough to
> allow the user that privilege.  Thanks,
> 

I think so. In the end it's still decided by the underlying IOMMU driver. 
If the IOMMU driver doesn't allow user to opt for no-snoop, it's exactly 
same as today's groupfd approach. Otherwise an user-opted policy 
implies that the decision is delegated to userspace. 

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

  reply	other threads:[~2021-06-03  5:19 UTC|newest]

Thread overview: 518+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-27  7:58 [RFC] /dev/ioasid uAPI proposal Tian, Kevin
2021-05-27  7:58 ` Tian, Kevin
2021-05-28  2:24 ` Jason Wang
2021-05-28  2:24   ` Jason Wang
2021-05-28 20:25   ` Jason Gunthorpe
2021-05-28 20:25     ` Jason Gunthorpe
2021-05-31  8:41   ` Liu Yi L
2021-06-01  2:36     ` Jason Wang
2021-06-01  2:36       ` Jason Wang
2021-06-01  3:31       ` Liu Yi L
2021-06-01  5:08         ` Jason Wang
2021-06-01  5:08           ` Jason Wang
2021-06-01  5:23           ` Lu Baolu
2021-06-01  5:23             ` Lu Baolu
2021-06-01  5:29             ` Jason Wang
2021-06-01  5:29               ` Jason Wang
2021-06-01  5:42               ` Tian, Kevin
2021-06-01  5:42                 ` Tian, Kevin
2021-06-01  6:07                 ` Jason Wang
2021-06-01  6:07                   ` Jason Wang
2021-06-01  6:16                   ` Tian, Kevin
2021-06-01  6:16                     ` Tian, Kevin
2021-06-01  8:47                     ` Jason Wang
2021-06-01  8:47                       ` Jason Wang
2021-06-01 17:31                       ` Jason Gunthorpe
2021-06-01 17:31                         ` Jason Gunthorpe
2021-06-02  8:54                         ` Jason Wang
2021-06-02  8:54                           ` Jason Wang
2021-06-02 17:21                           ` Jason Gunthorpe
2021-06-02 17:21                             ` Jason Gunthorpe
2021-06-07 13:30                             ` Enrico Weigelt, metux IT consult
2021-06-07 13:30                               ` Enrico Weigelt, metux IT consult
2021-06-07 18:01                               ` Jason Gunthorpe
2021-06-07 18:01                                 ` Jason Gunthorpe
2021-06-08 10:45                                 ` Enrico Weigelt, metux IT consult
2021-06-08 10:45                                   ` Enrico Weigelt, metux IT consult
2021-06-10  2:16                                   ` Jason Wang
2021-06-10  2:16                                     ` Jason Wang
2021-06-08  1:10                             ` Jason Wang
2021-06-08  1:10                               ` Jason Wang
2021-06-08 13:20                               ` Jason Gunthorpe
2021-06-08 13:20                                 ` Jason Gunthorpe
2021-06-10  2:00                                 ` Jason Wang
2021-06-10  2:00                                   ` Jason Wang
2021-06-10  4:03                                   ` Jason Wang
2021-06-10  4:03                                     ` Jason Wang
2021-06-10 11:47                                   ` Jason Gunthorpe
2021-06-10 11:47                                     ` Jason Gunthorpe
2021-06-11  5:43                                     ` Jason Wang
2021-06-11  5:43                                       ` Jason Wang
2021-06-01 17:29                   ` Jason Gunthorpe
2021-06-01 17:29                     ` Jason Gunthorpe
2021-06-02  8:58                     ` Jason Wang
2021-06-02  8:58                       ` Jason Wang
2021-06-01  4:27       ` Shenming Lu
2021-06-01  4:27         ` Shenming Lu
2021-06-01  5:10         ` Jason Wang
2021-06-01  5:10           ` Jason Wang
2021-05-28 16:23 ` Jean-Philippe Brucker
2021-05-28 16:23   ` Jean-Philippe Brucker
2021-05-28 20:16   ` Jason Gunthorpe
2021-05-28 20:16     ` Jason Gunthorpe
2021-06-01  7:50   ` Tian, Kevin
2021-06-01  7:50     ` Tian, Kevin
2021-05-28 17:35 ` Jason Gunthorpe
2021-05-28 17:35   ` Jason Gunthorpe
2021-06-01  8:10   ` Tian, Kevin
2021-06-01  8:10     ` Tian, Kevin
2021-06-01 17:42     ` Jason Gunthorpe
2021-06-01 17:42       ` Jason Gunthorpe
2021-06-02  1:33       ` Tian, Kevin
2021-06-02  1:33         ` Tian, Kevin
2021-06-02 16:09         ` Jason Gunthorpe
2021-06-02 16:09           ` Jason Gunthorpe
2021-06-03  1:29           ` Tian, Kevin
2021-06-03  1:29             ` Tian, Kevin
2021-06-03  5:09             ` David Gibson
2021-06-03  5:09               ` David Gibson
2021-06-03  6:49               ` Tian, Kevin
2021-06-03  6:49                 ` Tian, Kevin
2021-06-03 11:47                 ` Jason Gunthorpe
2021-06-03 11:47                   ` Jason Gunthorpe
2021-06-04  2:15                   ` Tian, Kevin
2021-06-04  2:15                     ` Tian, Kevin
2021-06-08  0:49                 ` David Gibson
2021-06-08  0:49                   ` David Gibson
2021-06-09  2:52                   ` Tian, Kevin
2021-06-09  2:52                     ` Tian, Kevin
2021-06-02  6:32   ` David Gibson
2021-06-02  6:32     ` David Gibson
2021-06-02 16:16     ` Jason Gunthorpe
2021-06-02 16:16       ` Jason Gunthorpe
2021-06-03  2:11       ` Tian, Kevin
2021-06-03  2:11         ` Tian, Kevin
2021-06-03  5:13       ` David Gibson
2021-06-03  5:13         ` David Gibson
2021-06-03 11:52         ` Jason Gunthorpe
2021-06-03 11:52           ` Jason Gunthorpe
2021-06-08  0:53           ` David Gibson
2021-06-08  0:53             ` David Gibson
2021-06-08 19:04             ` Jason Gunthorpe
2021-06-08 19:04               ` Jason Gunthorpe
2021-06-17  2:42               ` David Gibson
2021-06-17  2:42                 ` David Gibson
2021-05-28 19:58 ` Jason Gunthorpe
2021-05-28 19:58   ` Jason Gunthorpe
2021-06-01  8:38   ` Tian, Kevin
2021-06-01  8:38     ` Tian, Kevin
2021-06-01 17:56     ` Jason Gunthorpe
2021-06-01 17:56       ` Jason Gunthorpe
2021-06-02  2:00       ` Tian, Kevin
2021-06-02  2:00         ` Tian, Kevin
2021-06-02  6:57       ` David Gibson
2021-06-02  6:57         ` David Gibson
2021-06-02 16:37         ` Jason Gunthorpe
2021-06-02 16:37           ` Jason Gunthorpe
2021-06-03  5:23           ` David Gibson
2021-06-03  5:23             ` David Gibson
2021-06-03 12:28             ` Jason Gunthorpe
2021-06-03 12:28               ` Jason Gunthorpe
2021-06-08  6:04               ` David Gibson
2021-06-08  6:04                 ` David Gibson
2021-06-08 19:23                 ` Jason Gunthorpe
2021-06-08 19:23                   ` Jason Gunthorpe
2021-06-02  6:48   ` David Gibson
2021-06-02  6:48     ` David Gibson
2021-06-02 16:58     ` Jason Gunthorpe
2021-06-02 16:58       ` Jason Gunthorpe
2021-06-03  2:49       ` Tian, Kevin
2021-06-03  2:49         ` Tian, Kevin
2021-06-03  5:48         ` David Gibson
2021-06-03  5:48           ` David Gibson
2021-06-03  5:45       ` David Gibson
2021-06-03  5:45         ` David Gibson
2021-06-03 12:11         ` Jason Gunthorpe
2021-06-03 12:11           ` Jason Gunthorpe
2021-06-04  6:08           ` Tian, Kevin
2021-06-04  6:08             ` Tian, Kevin
2021-06-04 12:33             ` Jason Gunthorpe
2021-06-04 12:33               ` Jason Gunthorpe
2021-06-04 23:20               ` Tian, Kevin
2021-06-04 23:20                 ` Tian, Kevin
2021-06-08  6:13           ` David Gibson
2021-06-08  6:13             ` David Gibson
2021-06-04 10:24         ` Jean-Philippe Brucker
2021-06-04 10:24           ` Jean-Philippe Brucker
2021-06-04 12:05           ` Jason Gunthorpe
2021-06-04 12:05             ` Jason Gunthorpe
2021-06-04 17:27             ` Jacob Pan
2021-06-04 17:27               ` Jacob Pan
2021-06-04 17:40               ` Jason Gunthorpe
2021-06-04 17:40                 ` Jason Gunthorpe
2021-06-08  6:31           ` David Gibson
2021-06-08  6:31             ` David Gibson
2021-06-10 16:37             ` Jean-Philippe Brucker
2021-06-10 16:37               ` Jean-Philippe Brucker
2021-06-17  3:00               ` David Gibson
2021-06-17  3:00                 ` David Gibson
2021-06-18 17:03                 ` Jean-Philippe Brucker
2021-06-18 17:03                   ` Jean-Philippe Brucker
2021-06-18 18:30                   ` Jason Gunthorpe
2021-06-18 18:30                     ` Jason Gunthorpe
2021-06-23  8:19                     ` Tian, Kevin
2021-06-23  8:19                       ` Tian, Kevin
2021-06-23  7:57                   ` Tian, Kevin
2021-06-23  7:57                     ` Tian, Kevin
2021-06-24  3:49                   ` David Gibson
2021-06-24  3:49                     ` David Gibson
2021-05-28 20:03 ` Jason Gunthorpe
2021-05-28 20:03   ` Jason Gunthorpe
2021-06-01  7:01   ` Tian, Kevin
2021-06-01  7:01     ` Tian, Kevin
2021-06-01 20:28     ` Jason Gunthorpe
2021-06-01 20:28       ` Jason Gunthorpe
2021-06-02  1:25       ` Tian, Kevin
2021-06-02  1:25         ` Tian, Kevin
2021-06-02 23:27         ` Jason Gunthorpe
2021-06-02 23:27           ` Jason Gunthorpe
2021-06-04  8:17         ` Jean-Philippe Brucker
2021-06-04  8:17           ` Jean-Philippe Brucker
2021-06-04  8:43           ` Tian, Kevin
2021-06-04  8:43             ` Tian, Kevin
2021-06-02  8:52       ` Jason Wang
2021-06-02  8:52         ` Jason Wang
2021-06-02 16:07         ` Jason Gunthorpe
2021-06-02 16:07           ` Jason Gunthorpe
2021-06-01 22:22     ` Alex Williamson
2021-06-01 22:22       ` Alex Williamson
2021-06-02  2:20       ` Tian, Kevin
2021-06-02  2:20         ` Tian, Kevin
2021-06-02 16:01         ` Jason Gunthorpe
2021-06-02 16:01           ` Jason Gunthorpe
2021-06-02 17:11           ` Alex Williamson
2021-06-02 17:11             ` Alex Williamson
2021-06-02 17:35             ` Jason Gunthorpe
2021-06-02 17:35               ` Jason Gunthorpe
2021-06-02 18:01               ` Alex Williamson
2021-06-02 18:01                 ` Alex Williamson
2021-06-02 18:09                 ` Jason Gunthorpe
2021-06-02 18:09                   ` Jason Gunthorpe
2021-06-02 19:00                   ` Alex Williamson
2021-06-02 19:00                     ` Alex Williamson
2021-06-02 19:54                     ` Jason Gunthorpe
2021-06-02 19:54                       ` Jason Gunthorpe
2021-06-02 20:37                       ` Alex Williamson
2021-06-02 20:37                         ` Alex Williamson
2021-06-02 22:45                         ` Jason Gunthorpe
2021-06-02 22:45                           ` Jason Gunthorpe
2021-06-03  2:50                           ` Alex Williamson
2021-06-03  2:50                             ` Alex Williamson
2021-06-03  3:22                             ` Tian, Kevin
2021-06-03  3:22                               ` Tian, Kevin
2021-06-03  4:14                               ` Alex Williamson
2021-06-03  4:14                                 ` Alex Williamson
2021-06-03  5:18                                 ` Tian, Kevin [this message]
2021-06-03  5:18                                   ` Tian, Kevin
2021-06-03 12:40                               ` Jason Gunthorpe
2021-06-03 12:40                                 ` Jason Gunthorpe
2021-06-03 20:41                                 ` Alex Williamson
2021-06-03 20:41                                   ` Alex Williamson
2021-06-04  9:19                                   ` Tian, Kevin
2021-06-04  9:19                                     ` Tian, Kevin
2021-06-04 15:37                                     ` Alex Williamson
2021-06-04 15:37                                       ` Alex Williamson
2021-06-04 12:13                                   ` Jason Gunthorpe
2021-06-04 12:13                                     ` Jason Gunthorpe
2021-06-04 21:45                                     ` Alex Williamson
2021-06-04 21:45                                       ` Alex Williamson
2021-06-04  7:33                                 ` Tian, Kevin
2021-06-04  7:33                                   ` Tian, Kevin
2021-06-03 12:34                             ` Jason Gunthorpe
2021-06-03 12:34                               ` Jason Gunthorpe
2021-06-03 20:01                               ` Alex Williamson
2021-06-03 20:01                                 ` Alex Williamson
2021-06-03 20:10                                 ` Jason Gunthorpe
2021-06-03 20:10                                   ` Jason Gunthorpe
2021-06-03 21:44                                   ` Alex Williamson
2021-06-03 21:44                                     ` Alex Williamson
2021-06-04  8:38                                     ` Tian, Kevin
2021-06-04  8:38                                       ` Tian, Kevin
2021-06-04 12:28                                       ` Jason Gunthorpe
2021-06-04 12:28                                         ` Jason Gunthorpe
2021-06-04 15:26                                         ` Alex Williamson
2021-06-04 15:26                                           ` Alex Williamson
2021-06-04 15:40                                           ` Paolo Bonzini
2021-06-04 15:40                                             ` Paolo Bonzini
2021-06-04 15:50                                             ` Jason Gunthorpe
2021-06-04 15:50                                               ` Jason Gunthorpe
2021-06-04 15:57                                               ` Paolo Bonzini
2021-06-04 15:57                                                 ` Paolo Bonzini
2021-06-04 16:03                                                 ` Jason Gunthorpe
2021-06-04 16:03                                                   ` Jason Gunthorpe
2021-06-04 16:10                                                   ` Paolo Bonzini
2021-06-04 16:10                                                     ` Paolo Bonzini
2021-06-04 17:22                                                     ` Jason Gunthorpe
2021-06-04 17:22                                                       ` Jason Gunthorpe
2021-06-04 21:29                                                       ` Alex Williamson
2021-06-04 21:29                                                         ` Alex Williamson
2021-06-04 23:01                                                         ` Jason Gunthorpe
2021-06-04 23:01                                                           ` Jason Gunthorpe
2021-06-07 15:41                                                           ` Alex Williamson
2021-06-07 15:41                                                             ` Alex Williamson
2021-06-07 18:18                                                             ` Jason Gunthorpe
2021-06-07 18:18                                                               ` Jason Gunthorpe
2021-06-07 18:59                                                               ` Alex Williamson
2021-06-07 18:59                                                                 ` Alex Williamson
2021-06-07 19:08                                                                 ` Jason Gunthorpe
2021-06-07 19:08                                                                   ` Jason Gunthorpe
2021-06-07 19:41                                                                   ` Alex Williamson
2021-06-07 19:41                                                                     ` Alex Williamson
2021-06-07 23:03                                                                     ` Jason Gunthorpe
2021-06-07 23:03                                                                       ` Jason Gunthorpe
2021-06-08  0:30                                                                       ` Alex Williamson
2021-06-08  0:30                                                                         ` Alex Williamson
2021-06-08  1:20                                                                     ` Jason Wang
2021-06-08  1:20                                                                       ` Jason Wang
2021-06-30  6:53                                                                       ` Christoph Hellwig
2021-06-30  6:53                                                                         ` Christoph Hellwig
2021-06-30  6:49                                                                   ` Christoph Hellwig
2021-06-30  6:49                                                                     ` Christoph Hellwig
2021-06-07  3:25                                                         ` Tian, Kevin
2021-06-07  3:25                                                           ` Tian, Kevin
2021-06-07  6:51                                                           ` Paolo Bonzini
2021-06-07  6:51                                                             ` Paolo Bonzini
2021-06-07 18:01                                                             ` Jason Gunthorpe
2021-06-07 18:01                                                               ` Jason Gunthorpe
2021-06-30  6:56                                                           ` Christoph Hellwig
2021-06-30  6:56                                                             ` Christoph Hellwig
2021-06-05  6:22                                                       ` Paolo Bonzini
2021-06-05  6:22                                                         ` Paolo Bonzini
2021-06-07  3:50                                                         ` Tian, Kevin
2021-06-07  3:50                                                           ` Tian, Kevin
2021-06-07 17:59                                                         ` Jason Gunthorpe
2021-06-07 17:59                                                           ` Jason Gunthorpe
2021-06-08  7:56                                                           ` Paolo Bonzini
2021-06-08  7:56                                                             ` Paolo Bonzini
2021-06-08 13:15                                                             ` Jason Gunthorpe
2021-06-08 13:15                                                               ` Jason Gunthorpe
2021-06-08 13:44                                                               ` Paolo Bonzini
2021-06-08 13:44                                                                 ` Paolo Bonzini
2021-06-08 18:47                                                                 ` Alex Williamson
2021-06-08 18:47                                                                   ` Alex Williamson
2021-06-08 19:00                                                                   ` Jason Gunthorpe
2021-06-08 19:00                                                                     ` Jason Gunthorpe
2021-06-09  8:51                                                                     ` Enrico Weigelt, metux IT consult
2021-06-09  8:51                                                                       ` Enrico Weigelt, metux IT consult
2021-06-09  9:11                                                                       ` Paolo Bonzini
2021-06-09  9:11                                                                         ` Paolo Bonzini
2021-06-09 11:54                                                                         ` Jason Gunthorpe
2021-06-09 11:54                                                                           ` Jason Gunthorpe
2021-06-09 14:31                                                                           ` Alex Williamson
2021-06-09 14:31                                                                             ` Alex Williamson
2021-06-09 14:45                                                                             ` Jason Gunthorpe
2021-06-09 14:45                                                                               ` Jason Gunthorpe
2021-06-09 15:20                                                                               ` Paolo Bonzini
2021-06-09 15:20                                                                                 ` Paolo Bonzini
2021-10-27  6:18                                                                                 ` Tian, Kevin
2021-10-27  6:18                                                                                   ` Tian, Kevin
2021-10-27 10:32                                                                                   ` Paolo Bonzini
2021-10-27 10:32                                                                                     ` Paolo Bonzini
2021-10-28  1:50                                                                                     ` Tian, Kevin
2021-10-28  1:50                                                                                       ` Tian, Kevin
2021-06-09  2:49                                                                   ` Tian, Kevin
2021-06-09  2:49                                                                     ` Tian, Kevin
2021-06-09 11:57                                                                     ` Jason Gunthorpe
2021-06-09 11:57                                                                       ` Jason Gunthorpe
2021-06-09 12:46                                                                       ` Paolo Bonzini
2021-06-09 12:46                                                                         ` Paolo Bonzini
2021-06-09 12:47                                                                         ` Jason Gunthorpe
2021-06-09 12:47                                                                           ` Jason Gunthorpe
2021-06-09 13:24                                                                           ` Paolo Bonzini
2021-06-09 13:24                                                                             ` Paolo Bonzini
2021-06-09 14:32                                                                             ` Jason Gunthorpe
2021-06-09 14:32                                                                               ` Jason Gunthorpe
2021-06-30  7:01                                                                           ` Christoph Hellwig
2021-06-30  7:01                                                                             ` Christoph Hellwig
2021-06-09 18:09                                                                     ` Alex Williamson
2021-06-09 18:09                                                                       ` Alex Williamson
2021-06-03  2:52                         ` Jason Wang
2021-06-03  2:52                           ` Jason Wang
2021-06-03 13:09                           ` Jason Gunthorpe
2021-06-03 13:09                             ` Jason Gunthorpe
2021-06-04  1:11                             ` Jason Wang
2021-06-04  1:11                               ` Jason Wang
2021-06-04 11:58                               ` Jason Gunthorpe
2021-06-04 11:58                                 ` Jason Gunthorpe
2021-06-07  3:18                                 ` Jason Wang
2021-06-07  3:18                                   ` Jason Wang
2021-06-07 14:14                                   ` Jason Gunthorpe
2021-06-07 14:14                                     ` Jason Gunthorpe
2021-06-08  1:00                                     ` Jason Wang
2021-06-08  1:00                                       ` Jason Wang
2021-06-08  8:54                                       ` Enrico Weigelt, metux IT consult
2021-06-08  8:54                                         ` Enrico Weigelt, metux IT consult
2021-06-08 12:52                                         ` Jason Gunthorpe
2021-06-08 12:52                                           ` Jason Gunthorpe
2021-06-30  7:07                                     ` Christoph Hellwig
2021-06-30  7:07                                       ` Christoph Hellwig
2021-06-30  7:05                                 ` Christoph Hellwig
2021-06-30  7:05                                   ` Christoph Hellwig
2021-06-08  2:37       ` David Gibson
2021-06-08  2:37         ` David Gibson
2021-06-08 13:17         ` Jason Gunthorpe
2021-06-08 13:17           ` Jason Gunthorpe
2021-06-17  3:47           ` David Gibson
2021-06-17  3:47             ` David Gibson
2021-06-23  7:59             ` Tian, Kevin
2021-06-23  7:59               ` Tian, Kevin
2021-06-24  3:53               ` David Gibson
2021-06-24  3:53                 ` David Gibson
2021-05-28 23:36 ` Jason Gunthorpe
2021-05-28 23:36   ` Jason Gunthorpe
2021-05-31 11:31   ` Liu Yi L
2021-05-31 11:31     ` Liu Yi L
2021-05-31 18:09     ` Jason Gunthorpe
2021-05-31 18:09       ` Jason Gunthorpe
2021-06-01  3:08       ` Lu Baolu
2021-06-01  3:08         ` Lu Baolu
2021-06-01 17:24         ` Jason Gunthorpe
2021-06-01 17:24           ` Jason Gunthorpe
2021-06-01  1:25     ` Lu Baolu
2021-06-01  1:25       ` Lu Baolu
2021-06-01 11:09   ` Lu Baolu
2021-06-01 11:09     ` Lu Baolu
2021-06-01 17:26     ` Jason Gunthorpe
2021-06-01 17:26       ` Jason Gunthorpe
2021-06-02  4:01       ` Lu Baolu
2021-06-02  4:01         ` Lu Baolu
2021-06-02 23:23         ` Jason Gunthorpe
2021-06-02 23:23           ` Jason Gunthorpe
2021-06-03  5:49           ` Lu Baolu
2021-06-03  5:49             ` Lu Baolu
2021-06-03  5:54     ` David Gibson
2021-06-03  5:54       ` David Gibson
2021-06-03  6:50       ` Lu Baolu
2021-06-03  6:50         ` Lu Baolu
2021-06-03 12:56         ` Jason Gunthorpe
2021-06-03 12:56           ` Jason Gunthorpe
2021-06-02  7:22   ` David Gibson
2021-06-02  7:22     ` David Gibson
2021-06-03  6:39   ` Tian, Kevin
2021-06-03  6:39     ` Tian, Kevin
2021-06-03 13:05     ` Jason Gunthorpe
2021-06-03 13:05       ` Jason Gunthorpe
2021-06-04  6:37       ` Tian, Kevin
2021-06-04  6:37         ` Tian, Kevin
2021-06-04 12:09         ` Jason Gunthorpe
2021-06-04 12:09           ` Jason Gunthorpe
2021-06-04 23:10           ` Tian, Kevin
2021-06-04 23:10             ` Tian, Kevin
2021-06-07 17:54             ` Jason Gunthorpe
2021-06-07 17:54               ` Jason Gunthorpe
2021-06-15  8:59       ` Tian, Kevin
2021-06-15  8:59         ` Tian, Kevin
2021-06-15 15:06         ` Jason Gunthorpe
2021-06-15 15:06           ` Jason Gunthorpe
2021-06-15 22:59           ` Tian, Kevin
2021-06-15 22:59             ` Tian, Kevin
2021-06-15 23:02             ` Jason Gunthorpe
2021-06-15 23:02               ` Jason Gunthorpe
2021-06-15 23:09               ` Tian, Kevin
2021-06-15 23:09                 ` Tian, Kevin
2021-06-15 23:40                 ` Jason Gunthorpe
2021-06-15 23:40                   ` Jason Gunthorpe
2021-06-15 23:56                   ` Tian, Kevin
2021-06-15 23:56                     ` Tian, Kevin
2021-06-15 23:59                     ` Jason Gunthorpe
2021-06-15 23:59                       ` Jason Gunthorpe
2021-06-16  0:02                       ` Tian, Kevin
2021-06-16  0:02                         ` Tian, Kevin
2021-05-31 17:37 ` Parav Pandit
2021-05-31 17:37   ` Parav Pandit
2021-05-31 18:12   ` Jason Gunthorpe
2021-05-31 18:12     ` Jason Gunthorpe
2021-06-01 12:04     ` Parav Pandit
2021-06-01 12:04       ` Parav Pandit
2021-06-01 17:36       ` Jason Gunthorpe
2021-06-01 17:36         ` Jason Gunthorpe
2021-06-02  8:38   ` Enrico Weigelt, metux IT consult
2021-06-02  8:38     ` Enrico Weigelt, metux IT consult
2021-06-02 12:41     ` Parav Pandit
2021-06-02 12:41       ` Parav Pandit
2021-06-01  4:31 ` Shenming Lu
2021-06-01  4:31   ` Shenming Lu
2021-06-01  5:10   ` Lu Baolu
2021-06-01  5:10     ` Lu Baolu
2021-06-01  7:15     ` Shenming Lu
2021-06-01  7:15       ` Shenming Lu
2021-06-01 12:30       ` Lu Baolu
2021-06-01 12:30         ` Lu Baolu
2021-06-01 13:10         ` Shenming Lu
2021-06-01 13:10           ` Shenming Lu
2021-06-01 17:33         ` Jason Gunthorpe
2021-06-01 17:33           ` Jason Gunthorpe
2021-06-02  4:50           ` Shenming Lu
2021-06-02  4:50             ` Shenming Lu
2021-06-03 18:19             ` Jacob Pan
2021-06-03 18:19               ` Jacob Pan
2021-06-04  1:30               ` Jason Wang
2021-06-04  1:30                 ` Jason Wang
2021-06-04 16:22                 ` Jacob Pan
2021-06-04 16:22                   ` Jacob Pan
2021-06-04 16:22                   ` Jason Gunthorpe
2021-06-04 16:22                     ` Jason Gunthorpe
2021-06-04 18:05                     ` Jacob Pan
2021-06-04 18:05                       ` Jacob Pan
2021-06-04  2:03               ` Shenming Lu
2021-06-04  2:03                 ` Shenming Lu
2021-06-07 12:19                 ` Liu, Yi L
2021-06-07 12:19                   ` Liu, Yi L
2021-06-08  1:09                   ` Shenming Lu
2021-06-08  1:09                     ` Shenming Lu
2021-06-01 17:30 ` Parav Pandit
2021-06-01 17:30   ` Parav Pandit
2021-06-03 20:58   ` Jacob Pan
2021-06-03 20:58     ` Jacob Pan
2021-06-08  6:30     ` Parav Pandit
2021-06-08  6:30       ` Parav Pandit
2021-06-02  6:15 ` David Gibson
2021-06-02  6:15   ` David Gibson
2021-06-02 17:19   ` Jason Gunthorpe
2021-06-02 17:19     ` Jason Gunthorpe
2021-06-03  3:02     ` Tian, Kevin
2021-06-03  3:02       ` Tian, Kevin
2021-06-03  6:26     ` David Gibson
2021-06-03  6:26       ` David Gibson
2021-06-03 12:46       ` Jason Gunthorpe
2021-06-03 12:46         ` Jason Gunthorpe
2021-06-04  6:27         ` Tian, Kevin
2021-06-04  6:27           ` Tian, Kevin
2021-06-03  7:17   ` Tian, Kevin
2021-06-03  7:17     ` Tian, Kevin
2021-06-03 12:49     ` Jason Gunthorpe
2021-06-03 12:49       ` Jason Gunthorpe
2021-06-08  5:49     ` David Gibson
2021-06-08  5:49       ` David Gibson
2021-06-03  8:12   ` Tian, Kevin
2021-06-03  8:12     ` Tian, Kevin
2021-06-17  4:07     ` David Gibson
2021-06-17  4:07       ` David Gibson
2021-06-23  8:00       ` Tian, Kevin
2021-06-23  8:00         ` Tian, Kevin
2021-06-24  3:55         ` David Gibson
2021-06-24  3:55           ` David Gibson
2021-06-02  8:56 ` Enrico Weigelt, metux IT consult
2021-06-02  8:56   ` Enrico Weigelt, metux IT consult
2021-06-02 17:24   ` Jason Gunthorpe
2021-06-02 17:24     ` Jason Gunthorpe
2021-06-04 10:44     ` Enrico Weigelt, metux IT consult
2021-06-04 10:44       ` Enrico Weigelt, metux IT consult
2021-06-04 12:30       ` Jason Gunthorpe
2021-06-04 12:30         ` Jason Gunthorpe
2021-06-08  1:15         ` David Gibson
2021-06-08  1:15           ` David Gibson
2021-06-08 10:43         ` Enrico Weigelt, metux IT consult
2021-06-08 10:43           ` Enrico Weigelt, metux IT consult
2021-06-08 13:11           ` Jason Gunthorpe
2021-06-08 13:11             ` Jason Gunthorpe

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=MWHPR11MB18860BF3C9DA2B8688907D508C3C9@MWHPR11MB1886.namprd11.prod.outlook.com \
    --to=kevin.tian@intel.com \
    --cc=alex.williamson@redhat.com \
    --cc=ashok.raj@intel.com \
    --cc=corbet@lwn.net \
    --cc=dave.jiang@intel.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=dwmw2@infradead.org \
    --cc=iommu@lists.linux-foundation.org \
    --cc=jasowang@redhat.com \
    --cc=jean-philippe@linaro.org \
    --cc=jgg@nvidia.com \
    --cc=kvm@vger.kernel.org \
    --cc=kwankhede@nvidia.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robin.murphy@arm.com \
    /path/to/YOUR_REPLY

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

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is 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.