All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jerome Glisse <jglisse@redhat.com>
To: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
Cc: david1.zhou@amd.com, qiang.yu@amd.com,
	"'linux-rdma@vger.kernel.org'" <linux-rdma@vger.kernel.org>,
	"'linux-nvdimm@lists.01.org'" <linux-nvdimm@ml01.01.org>,
	Kuehling,, "Serguei  <Serguei.Sagalovitch@amd.com>,
	'linux-kernel@vger.kernel.org'" <linux-kernel@vger.kernel.org>,
	"'dri-devel@lists.freedesktop.org'"
	<dri-devel@lists.freedesktop.org>, Koenig,,
	Alexander, "Ben  <ben.sander@amd.com>,
	Suthikulpanit, Suravee" <Suravee.Suthikulpanit@amd.com>,
	"'linux-pci@vger.kernel.org'" <linux-pci@vger.kernel.org>,
	Jerome Glisse <j.glisse@gmail.com>,
	"Blinzer, Paul" <Paul.Blinzer@amd.com>,
	"'Linux-media@vger.kernel.org'" <Linux-media@vger.kernel.org>
Subject: Re: Enabling peer to peer device transactions for PCIe devices
Date: Thu, 5 Jan 2017 18:23:52 -0500	[thread overview]
Message-ID: <20170105232352.GB6426@redhat.com> (raw)
In-Reply-To: <20170105224215.GA3855@obsidianresearch.com>

On Thu, Jan 05, 2017 at 03:42:15PM -0700, Jason Gunthorpe wrote:
> On Thu, Jan 05, 2017 at 03:19:36PM -0500, Jerome Glisse wrote:
> 
> > > Always having a VMA changes the discussion - the question is how to
> > > create a VMA that reprensents IO device memory, and how do DMA
> > > consumers extract the correct information from that VMA to pass to the
> > > kernel DMA API so it can setup peer-peer DMA.
> > 
> > Well my point is that it can't be. In HMM case inside a single VMA
> > you
> [..]
> 
> > In the GPUDirect case the idea is that you have a specific device vma
> > that you map for peer to peer.
> 
> [..]
> 
> I still don't understand what you driving at - you've said in both
> cases a user VMA exists.

In the former case no, there is no VMA directly but if you want one than
a device can provide one. But such VMA is useless as CPU access is not
expected.

> 
> From my perspective in RDMA, all I want is a core kernel flow to
> convert a '__user *' into a scatter list of DMA addresses, that works no
> matter what is backing that VMA, be it HMM, a 'hidden' GPU object, or
> struct page memory.
> 
> A '__user *' pointer is the only way to setup a RDMA MR, and I see no
> reason to have another API at this time.
> 
> The details of how to translate to a scatter list are a MM subject,
> and the MM folks need to get 
> 
> I just don't care if that routine works at a page level, or a whole
> VMA level, or some combination of both, that is up to the MM team to
> figure out :)

And that's what i am trying to get accross. There is 2 cases here.
What exist on today hardware. Thing like GPU direct, that works on
VMA level. Versus where some new hardware is going were want to do
thing on page level. Both require different API at different level.

What i was trying to get accross is that no matter what level you
consider in the end you still need something at the DMA API level.
And that the 2 different use case (device vma or regular vma) means
2 differents API for the device driver.

> 
> > a page level. Expectation here is that the GPU userspace expose a special
> > API to allow RDMA to directly happen on GPU object allocated through
> > GPU specific API (ie it is not regular memory and it is not accessible
> > by CPU).
> 
> So, how do you identify these GPU objects? How do you expect RDMA
> convert them to scatter lists? How will ODP work?

No ODP on those. If you want vma, the GPU device driver can provide
one. GPU object are disjoint from regular memory (coming from some
form of mmap). They are created through ioctl and in many case are
never expose to the CPU. They only exist inside the GPU driver realm.

None the less there is usecase where exchanging those object accross
computer over a network make sense. I am not an end user here :)


> > > We have MMU notifiers to handle this today in RDMA. Async RDMA MR
> > > Invalidate like you see in the above out of tree patches is totally
> > > crazy and shouldn't be in mainline. Use ODP capable RDMA hardware.
> > 
> > Well there is still a large base of hardware that do not have such
> > feature and some people would like to be able to keep using those.
> 
> Hopefully someone will figure out how to do that without the crazy
> async MR invalidation.

Personnaly i don't care too much about this old hardware and thus i am
fine without supporting them. The open source userspace is playing
catchup and doing feature for old hardware probably does not make sense.

Cheers,
Jérôme
_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm

WARNING: multiple messages have this Message-ID (diff)
From: Jerome Glisse <jglisse-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Jason Gunthorpe
	<jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
Cc: david1.zhou-5C7GfCeVMHo@public.gmane.org,
	qiang.yu-5C7GfCeVMHo@public.gmane.org,
	"'linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org'"
	<linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"'linux-nvdimm-hn68Rpc1hR1g9hUCZPvPmw@public.gmane.org'"
	<linux-nvdimm-y27Ovi1pjclAfugRpC6u6w@public.gmane.org>,
	"Kuehling, Felix" <Felix.Kuehling-5C7GfCeVMHo@public.gmane.org>,
	"Sagalovitch,
	Serguei" <Serguei.Sagalovitch-5C7GfCeVMHo@public.gmane.org>,
	"'linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org'"
	<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"'dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org'"
	<dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
	"Koenig,
	Christian" <Christian.Koenig-5C7GfCeVMHo@public.gmane.org>,
	hch-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org, "Deucher,
	Alexander" <Alexander.Deucher-5C7GfCeVMHo@public.gmane.org>,
	"Sander, Ben" <ben.sander-5C7GfCeVMHo@public.gmane.org>,
	"Suthikulpanit,
	Suravee" <Suravee.Suthikulpanit-5C7GfCeVMHo@public.gmane.org>,
	"'linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org'"
	<linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Jerome Glisse <j.glisse-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	"Blinzer, Paul" <Paul.Blinzer-5C7GfCeVMHo@public.gmane.org>,
	"'Linux-media-u79uwXL29TY76Z2rM5mHXA@public.gmane.org'"
	<Linux-media-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: Enabling peer to peer device transactions for PCIe devices
Date: Thu, 5 Jan 2017 18:23:52 -0500	[thread overview]
Message-ID: <20170105232352.GB6426@redhat.com> (raw)
In-Reply-To: <20170105224215.GA3855-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>

On Thu, Jan 05, 2017 at 03:42:15PM -0700, Jason Gunthorpe wrote:
> On Thu, Jan 05, 2017 at 03:19:36PM -0500, Jerome Glisse wrote:
> 
> > > Always having a VMA changes the discussion - the question is how to
> > > create a VMA that reprensents IO device memory, and how do DMA
> > > consumers extract the correct information from that VMA to pass to the
> > > kernel DMA API so it can setup peer-peer DMA.
> > 
> > Well my point is that it can't be. In HMM case inside a single VMA
> > you
> [..]
> 
> > In the GPUDirect case the idea is that you have a specific device vma
> > that you map for peer to peer.
> 
> [..]
> 
> I still don't understand what you driving at - you've said in both
> cases a user VMA exists.

In the former case no, there is no VMA directly but if you want one than
a device can provide one. But such VMA is useless as CPU access is not
expected.

> 
> From my perspective in RDMA, all I want is a core kernel flow to
> convert a '__user *' into a scatter list of DMA addresses, that works no
> matter what is backing that VMA, be it HMM, a 'hidden' GPU object, or
> struct page memory.
> 
> A '__user *' pointer is the only way to setup a RDMA MR, and I see no
> reason to have another API at this time.
> 
> The details of how to translate to a scatter list are a MM subject,
> and the MM folks need to get 
> 
> I just don't care if that routine works at a page level, or a whole
> VMA level, or some combination of both, that is up to the MM team to
> figure out :)

And that's what i am trying to get accross. There is 2 cases here.
What exist on today hardware. Thing like GPU direct, that works on
VMA level. Versus where some new hardware is going were want to do
thing on page level. Both require different API at different level.

What i was trying to get accross is that no matter what level you
consider in the end you still need something at the DMA API level.
And that the 2 different use case (device vma or regular vma) means
2 differents API for the device driver.

> 
> > a page level. Expectation here is that the GPU userspace expose a special
> > API to allow RDMA to directly happen on GPU object allocated through
> > GPU specific API (ie it is not regular memory and it is not accessible
> > by CPU).
> 
> So, how do you identify these GPU objects? How do you expect RDMA
> convert them to scatter lists? How will ODP work?

No ODP on those. If you want vma, the GPU device driver can provide
one. GPU object are disjoint from regular memory (coming from some
form of mmap). They are created through ioctl and in many case are
never expose to the CPU. They only exist inside the GPU driver realm.

None the less there is usecase where exchanging those object accross
computer over a network make sense. I am not an end user here :)


> > > We have MMU notifiers to handle this today in RDMA. Async RDMA MR
> > > Invalidate like you see in the above out of tree patches is totally
> > > crazy and shouldn't be in mainline. Use ODP capable RDMA hardware.
> > 
> > Well there is still a large base of hardware that do not have such
> > feature and some people would like to be able to keep using those.
> 
> Hopefully someone will figure out how to do that without the crazy
> async MR invalidation.

Personnaly i don't care too much about this old hardware and thus i am
fine without supporting them. The open source userspace is playing
catchup and doing feature for old hardware probably does not make sense.

Cheers,
Jérôme

WARNING: multiple messages have this Message-ID (diff)
From: Jerome Glisse <jglisse@redhat.com>
To: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
Cc: Jerome Glisse <j.glisse@gmail.com>,
	"Deucher, Alexander" <Alexander.Deucher@amd.com>,
	"'linux-kernel@vger.kernel.org'" <linux-kernel@vger.kernel.org>,
	"'linux-rdma@vger.kernel.org'" <linux-rdma@vger.kernel.org>,
	"'linux-nvdimm@lists.01.org'" <linux-nvdimm@ml01.01.org>,
	"'Linux-media@vger.kernel.org'" <Linux-media@vger.kernel.org>,
	"'dri-devel@lists.freedesktop.org'"
	<dri-devel@lists.freedesktop.org>,
	"'linux-pci@vger.kernel.org'" <linux-pci@vger.kernel.org>,
	"Kuehling, Felix" <Felix.Kuehling@amd.com>,
	"Sagalovitch, Serguei" <Serguei.Sagalovitch@amd.com>,
	"Blinzer, Paul" <Paul.Blinzer@amd.com>,
	"Koenig, Christian" <Christian.Koenig@amd.com>,
	"Suthikulpanit, Suravee" <Suravee.Suthikulpanit@amd.com>,
	"Sander, Ben" <ben.sander@amd.com>,
	hch@infradead.org, david1.zhou@amd.com, qiang.yu@amd.com
Subject: Re: Enabling peer to peer device transactions for PCIe devices
Date: Thu, 5 Jan 2017 18:23:52 -0500	[thread overview]
Message-ID: <20170105232352.GB6426@redhat.com> (raw)
In-Reply-To: <20170105224215.GA3855@obsidianresearch.com>

On Thu, Jan 05, 2017 at 03:42:15PM -0700, Jason Gunthorpe wrote:
> On Thu, Jan 05, 2017 at 03:19:36PM -0500, Jerome Glisse wrote:
> 
> > > Always having a VMA changes the discussion - the question is how to
> > > create a VMA that reprensents IO device memory, and how do DMA
> > > consumers extract the correct information from that VMA to pass to the
> > > kernel DMA API so it can setup peer-peer DMA.
> > 
> > Well my point is that it can't be. In HMM case inside a single VMA
> > you
> [..]
> 
> > In the GPUDirect case the idea is that you have a specific device vma
> > that you map for peer to peer.
> 
> [..]
> 
> I still don't understand what you driving at - you've said in both
> cases a user VMA exists.

In the former case no, there is no VMA directly but if you want one than
a device can provide one. But such VMA is useless as CPU access is not
expected.

> 
> From my perspective in RDMA, all I want is a core kernel flow to
> convert a '__user *' into a scatter list of DMA addresses, that works no
> matter what is backing that VMA, be it HMM, a 'hidden' GPU object, or
> struct page memory.
> 
> A '__user *' pointer is the only way to setup a RDMA MR, and I see no
> reason to have another API at this time.
> 
> The details of how to translate to a scatter list are a MM subject,
> and the MM folks need to get 
> 
> I just don't care if that routine works at a page level, or a whole
> VMA level, or some combination of both, that is up to the MM team to
> figure out :)

And that's what i am trying to get accross. There is 2 cases here.
What exist on today hardware. Thing like GPU direct, that works on
VMA level. Versus where some new hardware is going were want to do
thing on page level. Both require different API at different level.

What i was trying to get accross is that no matter what level you
consider in the end you still need something at the DMA API level.
And that the 2 different use case (device vma or regular vma) means
2 differents API for the device driver.

> 
> > a page level. Expectation here is that the GPU userspace expose a special
> > API to allow RDMA to directly happen on GPU object allocated through
> > GPU specific API (ie it is not regular memory and it is not accessible
> > by CPU).
> 
> So, how do you identify these GPU objects? How do you expect RDMA
> convert them to scatter lists? How will ODP work?

No ODP on those. If you want vma, the GPU device driver can provide
one. GPU object are disjoint from regular memory (coming from some
form of mmap). They are created through ioctl and in many case are
never expose to the CPU. They only exist inside the GPU driver realm.

None the less there is usecase where exchanging those object accross
computer over a network make sense. I am not an end user here :)


> > > We have MMU notifiers to handle this today in RDMA. Async RDMA MR
> > > Invalidate like you see in the above out of tree patches is totally
> > > crazy and shouldn't be in mainline. Use ODP capable RDMA hardware.
> > 
> > Well there is still a large base of hardware that do not have such
> > feature and some people would like to be able to keep using those.
> 
> Hopefully someone will figure out how to do that without the crazy
> async MR invalidation.

Personnaly i don't care too much about this old hardware and thus i am
fine without supporting them. The open source userspace is playing
catchup and doing feature for old hardware probably does not make sense.

Cheers,
Jérôme

  reply	other threads:[~2017-01-05 23:23 UTC|newest]

Thread overview: 377+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-21 20:36 Enabling peer to peer device transactions for PCIe devices Deucher, Alexander
2016-11-21 20:36 ` Deucher, Alexander
2016-11-21 20:36 ` Deucher, Alexander
2016-11-21 20:36 ` Deucher, Alexander
2016-11-21 20:36 ` Deucher, Alexander
2016-11-22 18:11 ` Dan Williams
2016-11-22 18:11   ` Dan Williams
2016-11-22 18:11   ` Dan Williams
2016-11-22 18:11   ` Dan Williams
2016-11-22 18:11   ` Dan Williams
2016-11-22 18:59   ` Serguei Sagalovitch
2016-11-22 18:59     ` Serguei Sagalovitch
2016-11-22 20:01     ` Dan Williams
2016-11-22 20:01       ` Dan Williams
2016-11-22 20:01       ` Dan Williams
2016-11-22 20:10       ` Daniel Vetter
2016-11-22 20:10         ` Daniel Vetter
2016-11-22 20:10         ` Daniel Vetter
2016-11-22 20:10         ` Daniel Vetter
2016-11-22 20:24         ` Dan Williams
2016-11-22 20:24           ` Dan Williams
2016-11-22 20:24           ` Dan Williams
2016-11-22 20:35         ` Serguei Sagalovitch
2016-11-22 20:35           ` Serguei Sagalovitch
2016-11-22 20:35           ` Serguei Sagalovitch
2016-11-22 20:35           ` Serguei Sagalovitch
2016-11-22 21:03           ` Daniel Vetter
2016-11-22 21:03             ` Daniel Vetter
2016-11-22 21:03             ` Daniel Vetter
2016-11-22 21:03             ` Daniel Vetter
2016-11-22 21:13             ` Serguei Sagalovitch
2016-11-22 21:13               ` Serguei Sagalovitch
2016-11-22 21:21             ` Dan Williams
2016-11-22 21:21               ` Dan Williams
2016-11-22 21:21               ` Dan Williams
2016-11-22 21:21               ` Dan Williams
2016-11-22 22:21               ` Sagalovitch, Serguei
2016-11-22 22:21                 ` Sagalovitch, Serguei
2016-11-22 22:21                 ` Sagalovitch, Serguei
2016-11-22 22:21                 ` Sagalovitch, Serguei
2016-11-22 22:21                 ` Sagalovitch, Serguei
2016-11-23  7:49               ` Daniel Vetter
2016-11-23  7:49                 ` Daniel Vetter
2016-11-23  7:49                 ` Daniel Vetter
2016-11-23  7:49                 ` Daniel Vetter
2016-11-23  8:51                 ` Christian König
2016-11-23  8:51                   ` Christian König
2016-11-23  8:51                   ` Christian König
2016-11-23  8:51                   ` Christian König
2016-11-23 19:27                   ` Serguei Sagalovitch
2016-11-23 19:27                     ` Serguei Sagalovitch
2016-11-23 19:27                     ` Serguei Sagalovitch
2016-11-23 19:27                     ` Serguei Sagalovitch
2016-11-23 17:03                 ` Dave Hansen
2016-11-23 17:03                   ` Dave Hansen
2016-11-23 17:03                   ` Dave Hansen
2016-11-23 17:03                   ` Dave Hansen
2016-11-23 17:13     ` Logan Gunthorpe
2016-11-23 17:13       ` Logan Gunthorpe
2016-11-23 17:13       ` Logan Gunthorpe
2016-11-23 17:13       ` Logan Gunthorpe
2016-11-23 17:27       ` Bart Van Assche
2016-11-23 17:27         ` Bart Van Assche
2016-11-23 17:27         ` Bart Van Assche
2016-11-23 17:27         ` Bart Van Assche
2016-11-23 18:40         ` Dan Williams
2016-11-23 18:40           ` Dan Williams
2016-11-23 18:40           ` Dan Williams
2016-11-23 19:12           ` Jason Gunthorpe
2016-11-23 19:12             ` Jason Gunthorpe
2016-11-23 19:12             ` Jason Gunthorpe
2016-11-23 19:24             ` Serguei Sagalovitch
2016-11-23 19:24               ` Serguei Sagalovitch
2016-11-23 19:24               ` Serguei Sagalovitch
2016-11-23 19:06         ` Serguei Sagalovitch
2016-11-23 19:06           ` Serguei Sagalovitch
2016-11-23 19:06           ` Serguei Sagalovitch
2016-11-23 19:06           ` Serguei Sagalovitch
2016-11-23 19:05       ` Jason Gunthorpe
2016-11-23 19:05         ` Jason Gunthorpe
2016-11-23 19:05         ` Jason Gunthorpe
2016-11-23 19:14         ` Serguei Sagalovitch
2016-11-23 19:14           ` Serguei Sagalovitch
2016-11-23 19:14           ` Serguei Sagalovitch
2016-11-23 19:32           ` Jason Gunthorpe
2016-11-23 19:32             ` Jason Gunthorpe
2016-11-23 19:32             ` Jason Gunthorpe
2016-11-23 19:58             ` Serguei Sagalovitch
2016-11-23 19:58               ` Serguei Sagalovitch
2016-11-23 20:33               ` Jason Gunthorpe
2016-11-23 20:33                 ` Jason Gunthorpe
2016-11-23 20:33                 ` Jason Gunthorpe
2016-11-23 21:11                 ` Logan Gunthorpe
2016-11-23 21:11                   ` Logan Gunthorpe
2016-11-23 21:55                   ` Jason Gunthorpe
2016-11-23 21:55                     ` Jason Gunthorpe
2016-11-23 21:55                     ` Jason Gunthorpe
2016-11-23 22:42                     ` Dan Williams
2016-11-23 22:42                       ` Dan Williams
2016-11-23 22:42                       ` Dan Williams
2016-11-23 23:25                       ` Jason Gunthorpe
2016-11-23 23:25                         ` Jason Gunthorpe
2016-11-23 23:25                         ` Jason Gunthorpe
2016-11-24  9:45                         ` Christian König
2016-11-24  9:45                           ` Christian König
2016-11-24  9:45                           ` Christian König
2016-11-24 16:26                           ` Jason Gunthorpe
2016-11-24 16:26                             ` Jason Gunthorpe
2016-11-24 16:26                             ` Jason Gunthorpe
2016-11-24 17:00                             ` Serguei Sagalovitch
2016-11-24 17:00                               ` Serguei Sagalovitch
2016-11-24 17:00                               ` Serguei Sagalovitch
2016-11-24 17:55                           ` Logan Gunthorpe
2016-11-24 17:55                             ` Logan Gunthorpe
2016-11-24 17:55                             ` Logan Gunthorpe
2016-11-25 13:06                             ` Christian König
2016-11-25 13:06                               ` Christian König
2016-11-25 13:06                               ` Christian König
2016-11-25 16:45                               ` Logan Gunthorpe
2016-11-25 16:45                                 ` Logan Gunthorpe
2016-11-25 16:45                                 ` Logan Gunthorpe
2016-11-25 17:20                                 ` Serguei Sagalovitch
2016-11-25 17:20                                   ` Serguei Sagalovitch
2016-11-25 17:20                                   ` Serguei Sagalovitch
2016-11-25 20:26                                   ` Felix Kuehling
2016-11-25 20:26                                     ` Felix Kuehling
2016-11-25 20:26                                     ` Felix Kuehling
2016-11-25 20:48                                     ` Serguei Sagalovitch
2016-11-25 20:48                                       ` Serguei Sagalovitch
2016-11-25 20:48                                       ` Serguei Sagalovitch
2016-11-24  0:40                     ` Sagalovitch, Serguei
2016-11-24  0:40                       ` Sagalovitch, Serguei
2016-11-24  0:40                       ` Sagalovitch, Serguei
2016-11-24  0:40                       ` Sagalovitch, Serguei
2016-11-24 16:24                       ` Jason Gunthorpe
2016-11-24 16:24                         ` Jason Gunthorpe
2016-11-24 16:24                         ` Jason Gunthorpe
2016-11-24  1:25                     ` Logan Gunthorpe
2016-11-24  1:25                       ` Logan Gunthorpe
2016-11-24  1:25                       ` Logan Gunthorpe
2016-11-24 16:42                       ` Jason Gunthorpe
2016-11-24 16:42                         ` Jason Gunthorpe
2016-11-24 16:42                         ` Jason Gunthorpe
2016-11-24 18:11                         ` Logan Gunthorpe
2016-11-24 18:11                           ` Logan Gunthorpe
2016-11-24 18:11                           ` Logan Gunthorpe
2016-11-25  7:58                           ` Christoph Hellwig
2016-11-25  7:58                             ` Christoph Hellwig
2016-11-25  7:58                             ` Christoph Hellwig
2016-11-25 19:41                             ` Jason Gunthorpe
2016-11-25 19:41                               ` Jason Gunthorpe
2016-11-25 19:41                               ` Jason Gunthorpe
2016-11-25 17:59                           ` Serguei Sagalovitch
2016-11-25 17:59                             ` Serguei Sagalovitch
2016-11-25 17:59                             ` Serguei Sagalovitch
2016-11-25 13:22                         ` Christian König
2016-11-25 13:22                           ` Christian König
2016-11-25 13:22                           ` Christian König
2016-11-25 17:16                           ` Serguei Sagalovitch
2016-11-25 17:16                             ` Serguei Sagalovitch
2016-11-25 17:16                             ` Serguei Sagalovitch
2016-11-25 19:34                             ` Jason Gunthorpe
2016-11-25 19:34                               ` Jason Gunthorpe
2016-11-25 19:34                               ` Jason Gunthorpe
2016-11-25 19:49                               ` Serguei Sagalovitch
2016-11-25 19:49                                 ` Serguei Sagalovitch
2016-11-25 19:49                                 ` Serguei Sagalovitch
2016-11-25 20:19                                 ` Jason Gunthorpe
2016-11-25 20:19                                   ` Jason Gunthorpe
2016-11-25 20:19                                   ` Jason Gunthorpe
2016-11-25 23:41                               ` Alex Deucher
2016-11-25 23:41                                 ` Alex Deucher
2016-11-25 23:41                                 ` Alex Deucher
2016-11-25 19:32                           ` Jason Gunthorpe
2016-11-25 19:32                             ` Jason Gunthorpe
2016-11-25 19:32                             ` Jason Gunthorpe
2016-11-25 20:40                             ` Christian König
2016-11-25 20:40                               ` Christian König
2016-11-25 20:40                               ` Christian König
2016-11-25 20:51                               ` Felix Kuehling
2016-11-25 20:51                                 ` Felix Kuehling
2016-11-25 20:51                                 ` Felix Kuehling
2016-11-25 21:18                               ` Jason Gunthorpe
2016-11-25 21:18                                 ` Jason Gunthorpe
2016-11-25 21:18                                 ` Jason Gunthorpe
2016-11-27  8:16                             ` Haggai Eran
2016-11-27  8:16                               ` Haggai Eran
2016-11-27  8:16                               ` Haggai Eran
2016-11-27 14:02                             ` Haggai Eran
2016-11-27 14:02                               ` Haggai Eran
2016-11-27 14:02                               ` Haggai Eran
2016-11-27 14:07                               ` Christian König
2016-11-27 14:07                                 ` Christian König
2016-11-27 14:07                                 ` Christian König
2016-11-28  5:31                                 ` zhoucm1
2016-11-28  5:31                                   ` zhoucm1
2016-11-28  5:31                                   ` zhoucm1
2016-11-28 14:48                               ` Serguei Sagalovitch
2016-11-28 14:48                                 ` Serguei Sagalovitch
2016-11-28 14:48                                 ` Serguei Sagalovitch
     [not found]                                 ` <314e9ef7-f60e-bf6b-d488-c585f1ea60e8-5C7GfCeVMHo@public.gmane.org>
2016-11-28 18:36                                   ` Haggai Eran
2016-11-28 18:36                                     ` Haggai Eran
2016-11-28 18:36                                     ` Haggai Eran
2016-11-28 16:57                               ` Jason Gunthorpe
2016-11-28 16:57                                 ` Jason Gunthorpe
2016-11-28 16:57                                 ` Jason Gunthorpe
     [not found]                                 ` <20161128165751.GB28381-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-11-28 18:19                                   ` Haggai Eran
2016-11-28 18:19                                     ` Haggai Eran
2016-11-28 18:19                                     ` Haggai Eran
     [not found]                                     ` <1480357179.19407.13.camel-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2016-11-28 19:02                                       ` Jason Gunthorpe
2016-11-28 19:02                                         ` Jason Gunthorpe
     [not found]                                         ` <20161128190244.GA21975-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-11-30 10:45                                           ` Haggai Eran
2016-11-30 10:45                                             ` Haggai Eran
     [not found]                                             ` <c0ddccf3-52ce-d883-a57a-70d8a1febf85-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2016-11-30 16:23                                               ` Jason Gunthorpe
2016-11-30 16:23                                                 ` Jason Gunthorpe
     [not found]                                                 ` <20161130162353.GA24639-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-11-30 17:28                                                   ` Serguei Sagalovitch
2016-11-30 17:28                                                     ` Serguei Sagalovitch
     [not found]                                                     ` <2560aab2-426c-6e58-cb4f-77ec76e0c941-5C7GfCeVMHo@public.gmane.org>
2016-12-04  7:33                                                       ` Haggai Eran
2016-12-04  7:33                                                         ` Haggai Eran
2016-11-30 18:01                                                   ` Logan Gunthorpe
2016-11-30 18:01                                                     ` Logan Gunthorpe
     [not found]                                                     ` <5f5b7989-84f5-737e-47c8-831f752d6280-OTvnGxWRz7hWk0Htik3J/w@public.gmane.org>
2016-12-04  7:42                                                       ` Haggai Eran
2016-12-04  7:42                                                         ` Haggai Eran
     [not found]                                                         ` <c1ead8a0-6850-fc84-2793-b986f5c1f726-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2016-12-04 13:06                                                           ` Stephen Bates
2016-12-04 13:06                                                             ` Stephen Bates
2016-12-04 13:23                                                           ` Stephen Bates
2016-12-04 13:23                                                             ` Stephen Bates
     [not found]                                                             ` <61a2fb07344aacd81111449d222de66e.squirrel-2RFepEojUI2m/tTznewQxVaTQe2KTcn/@public.gmane.org>
2016-12-05 17:18                                                               ` Jason Gunthorpe
2016-12-05 17:18                                                                 ` Jason Gunthorpe
     [not found]                                                                 ` <20161205171830.GB27784-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-12-05 17:40                                                                   ` Dan Williams
2016-12-05 17:40                                                                     ` Dan Williams
     [not found]                                                                     ` <CAPcyv4hdMkXOxj9hUDpnftA7UTGDa498eBugdePp8EWr6S80gA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-12-05 18:02                                                                       ` Jason Gunthorpe
2016-12-05 18:02                                                                         ` Jason Gunthorpe
     [not found]                                                                         ` <20161205180231.GA28133-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-12-05 18:08                                                                           ` Dan Williams
2016-12-05 18:08                                                                             ` Dan Williams
     [not found]                                                                             ` <CAPcyv4iEXwvtDbZgnWzdKU6uN_sOGmXH1KtW_Nws6kUftJUigQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-12-05 18:39                                                                               ` Logan Gunthorpe
2016-12-05 18:39                                                                                 ` Logan Gunthorpe
     [not found]                                                                                 ` <a3a1c239-297d-c091-7758-54acdf00f74e-OTvnGxWRz7hWk0Htik3J/w@public.gmane.org>
2016-12-05 18:48                                                                                   ` Dan Williams
2016-12-05 18:48                                                                                     ` Dan Williams
     [not found]                                                                                     ` <CAPcyv4iVHhOSxPrLMZ53Xw3CK+9cOWn9zEG8smMtqF_LAcKKpg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-12-05 19:14                                                                                       ` Jason Gunthorpe
2016-12-05 19:14                                                                                         ` Jason Gunthorpe
     [not found]                                                                                         ` <20161205191438.GA20464-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-12-05 19:27                                                                                           ` Logan Gunthorpe
2016-12-05 19:27                                                                                             ` Logan Gunthorpe
     [not found]                                                                                             ` <10356964-c454-47fb-7fb3-8bf2a418b11b-OTvnGxWRz7hWk0Htik3J/w@public.gmane.org>
2016-12-05 19:46                                                                                               ` Jason Gunthorpe
2016-12-05 19:46                                                                                                 ` Jason Gunthorpe
     [not found]                                                                                                 ` <20161205194614.GA21132-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-12-05 19:59                                                                                                   ` Logan Gunthorpe
2016-12-05 19:59                                                                                                     ` Logan Gunthorpe
2016-12-05 20:06                                                                                                   ` Christoph Hellwig
2016-12-05 20:06                                                                                                     ` Christoph Hellwig
2016-12-06  8:06                                                                                       ` Stephen Bates
2016-12-06  8:06                                                                                         ` Stephen Bates
     [not found]                                                                                         ` <ac07a73f2601f6ca35cecc83c553feb0.squirrel-2RFepEojUI2m/tTznewQxVaTQe2KTcn/@public.gmane.org>
2016-12-06 16:38                                                                                           ` Jason Gunthorpe
2016-12-06 16:38                                                                                             ` Jason Gunthorpe
     [not found]                                                                                             ` <20161206163850.GC28066-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-12-06 16:51                                                                                               ` Logan Gunthorpe
2016-12-06 16:51                                                                                                 ` Logan Gunthorpe
     [not found]                                                                                                 ` <ec136c34-417d-8a55-c176-2c1d759a5fb8-OTvnGxWRz7hWk0Htik3J/w@public.gmane.org>
2016-12-06 17:28                                                                                                   ` Jason Gunthorpe
2016-12-06 17:28                                                                                                     ` Jason Gunthorpe
     [not found]                                                                                                     ` <20161206172838.GB19318-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-12-06 21:47                                                                                                       ` Logan Gunthorpe
2016-12-06 21:47                                                                                                         ` Logan Gunthorpe
     [not found]                                                                                                         ` <bedaa7a2-e42d-da83-5c2b-9d639b0397c5-OTvnGxWRz7hWk0Htik3J/w@public.gmane.org>
2016-12-06 22:02                                                                                                           ` Dan Williams
2016-12-06 22:02                                                                                                             ` Dan Williams
2016-12-06 17:12                                                                                               ` Christoph Hellwig
2016-12-06 17:12                                                                                                 ` Christoph Hellwig
2016-12-04  7:53                                                   ` Haggai Eran
2016-12-04  7:53                                                     ` Haggai Eran
2016-11-30 17:10                                               ` Deucher, Alexander
2016-11-30 17:10                                                 ` Deucher, Alexander
2016-11-30 17:10                                                 ` Deucher, Alexander
2016-11-28 18:20                                 ` Logan Gunthorpe
2016-11-28 18:20                                   ` Logan Gunthorpe
2016-11-28 18:20                                   ` Logan Gunthorpe
2016-11-28 19:35                                   ` Serguei Sagalovitch
2016-11-28 19:35                                     ` Serguei Sagalovitch
2016-11-28 19:35                                     ` Serguei Sagalovitch
2016-11-28 21:36                                     ` Logan Gunthorpe
2016-11-28 21:36                                       ` Logan Gunthorpe
2016-11-28 21:36                                       ` Logan Gunthorpe
2016-11-28 21:55                                       ` Serguei Sagalovitch
2016-11-28 21:55                                         ` Serguei Sagalovitch
2016-11-28 21:55                                         ` Serguei Sagalovitch
2016-11-28 22:24                                         ` Jason Gunthorpe
2016-11-28 22:24                                           ` Jason Gunthorpe
2016-11-28 22:24                                           ` Jason Gunthorpe
2017-01-05 18:39 ` Jerome Glisse
2017-01-05 18:39   ` Jerome Glisse
2017-01-05 18:39   ` Jerome Glisse
2017-01-05 18:39   ` Jerome Glisse
2017-01-05 19:01   ` Jason Gunthorpe
2017-01-05 19:01     ` Jason Gunthorpe
2017-01-05 19:01     ` Jason Gunthorpe
2017-01-05 19:54     ` Jerome Glisse
2017-01-05 19:54       ` Jerome Glisse
2017-01-05 19:54       ` Jerome Glisse
2017-01-05 20:07       ` Jason Gunthorpe
2017-01-05 20:07         ` Jason Gunthorpe
2017-01-05 20:07         ` Jason Gunthorpe
2017-01-05 20:19         ` Jerome Glisse
2017-01-05 20:19           ` Jerome Glisse
2017-01-05 20:19           ` Jerome Glisse
2017-01-05 22:42           ` Jason Gunthorpe
2017-01-05 22:42             ` Jason Gunthorpe
2017-01-05 22:42             ` Jason Gunthorpe
2017-01-05 23:23             ` Jerome Glisse [this message]
2017-01-05 23:23               ` Jerome Glisse
2017-01-05 23:23               ` Jerome Glisse
2017-01-06  0:30               ` Jason Gunthorpe
2017-01-06  0:30                 ` Jason Gunthorpe
2017-01-06  0:30                 ` Jason Gunthorpe
2017-01-06  0:41                 ` Serguei Sagalovitch
2017-01-06  0:41                   ` Serguei Sagalovitch
2017-01-06  0:41                   ` Serguei Sagalovitch
2017-01-06  1:58                 ` Jerome Glisse
2017-01-06  1:58                   ` Jerome Glisse
2017-01-06  1:58                   ` Jerome Glisse
2017-01-06 16:56                   ` Serguei Sagalovitch
2017-01-06 16:56                     ` Serguei Sagalovitch
2017-01-06 16:56                     ` Serguei Sagalovitch
2017-01-06 17:37                     ` Jerome Glisse
2017-01-06 17:37                       ` Jerome Glisse
2017-01-06 17:37                       ` Jerome Glisse
2017-01-06 18:26                       ` Jason Gunthorpe
2017-01-06 18:26                         ` Jason Gunthorpe
2017-01-06 18:26                         ` Jason Gunthorpe
2017-01-06 19:12                         ` Deucher, Alexander
2017-01-06 19:12                           ` Deucher, Alexander
2017-01-06 19:12                           ` Deucher, Alexander
2017-01-06 19:12                           ` Deucher, Alexander
2017-01-06 22:10                         ` Logan Gunthorpe
2017-01-06 22:10                           ` Logan Gunthorpe
2017-01-06 22:10                           ` Logan Gunthorpe
2017-01-12  4:54                           ` Stephen Bates
2017-01-12  4:54                             ` Stephen Bates
2017-01-12  4:54                             ` Stephen Bates
2017-01-12 15:11                             ` Jerome Glisse
2017-01-12 15:11                               ` Jerome Glisse
2017-01-12 15:11                               ` Jerome Glisse
2017-01-12 17:17                               ` Jason Gunthorpe
2017-01-12 17:17                                 ` Jason Gunthorpe
2017-01-12 17:17                                 ` Jason Gunthorpe
2017-01-13 13:04                               ` Christian König
2017-01-13 13:04                                 ` Christian König
2017-01-13 13:04                                 ` Christian König
2017-01-12 22:35                             ` Logan Gunthorpe
2017-01-12 22:35                               ` Logan Gunthorpe
2017-01-12 22:35                               ` Logan Gunthorpe
2017-01-06 15:08     ` Henrique Almeida
2017-01-06 15:08       ` Henrique Almeida
2017-01-06 15:08       ` Henrique Almeida
2017-10-20 12:36 ` Ludwig Petrosyan
2017-10-20 12:36   ` Ludwig Petrosyan
2017-10-20 12:36   ` Ludwig Petrosyan
2017-10-20 15:48   ` Logan Gunthorpe
2017-10-20 15:48     ` Logan Gunthorpe
2017-10-20 15:48     ` Logan Gunthorpe
2017-10-22  6:13     ` Petrosyan, Ludwig
2017-10-22  6:13       ` Petrosyan, Ludwig
2017-10-22  6:13       ` Petrosyan, Ludwig
2017-10-22  6:13       ` Petrosyan, Ludwig
2017-10-22 17:19       ` Logan Gunthorpe
2017-10-22 17:19         ` Logan Gunthorpe
2017-10-23 16:08       ` David Laight
2017-10-23 16:08         ` David Laight
2017-10-23 16:08         ` David Laight
2017-10-23 22:04         ` Logan Gunthorpe
2017-10-23 22:04           ` Logan Gunthorpe
2017-10-23 22:04           ` Logan Gunthorpe
2017-10-24  5:58           ` Petrosyan, Ludwig
2017-10-24  5:58             ` Petrosyan, Ludwig
2017-10-24  5:58             ` Petrosyan, Ludwig
2017-10-24 14:58             ` David Laight
2017-10-24 14:58               ` David Laight
2017-10-24 14:58               ` David Laight
2017-10-24 14:58               ` David Laight
2017-10-26 13:28               ` Petrosyan, Ludwig
2017-10-26 13:28                 ` Petrosyan, Ludwig
2017-10-26 13:28                 ` Petrosyan, Ludwig
2017-07-11 15:10 lee fei

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=20170105232352.GB6426@redhat.com \
    --to=jglisse@redhat.com \
    --cc=Linux-media@vger.kernel.org \
    --cc=Paul.Blinzer@amd.com \
    --cc=Suravee.Suthikulpanit@amd.com \
    --cc=david1.zhou@amd.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=j.glisse@gmail.com \
    --cc=jgunthorpe@obsidianresearch.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nvdimm@ml01.01.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux-rdma@vger.kernel.org \
    --cc=qiang.yu@amd.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.