Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-17 Thread Jason Gunthorpe
On Tue, Jan 17, 2017 at 10:33:16PM +, Bart Van Assche wrote: > again and also the dma_device pointer from struct ib_device. Since the > dev.dma_ops pointer in struct ib_device is not yet used dev.dma_ops can be > used > instead of the dma_device pointer. okay great Jason

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-17 Thread Jason Gunthorpe
On Tue, Jan 17, 2017 at 10:33:16PM +, Bart Van Assche wrote: > again and also the dma_device pointer from struct ib_device. Since the > dev.dma_ops pointer in struct ib_device is not yet used dev.dma_ops can be > used > instead of the dma_device pointer. okay great Jason

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-17 Thread Bart Van Assche
On Tue, 2017-01-17 at 15:27 -0700, Jason Gunthorpe wrote: > On Tue, Jan 17, 2017 at 10:00:00PM +, Bart Van Assche wrote: > > + /* > > +* qib and hfi1 use two sets of DMA operations: > > +* - The DMA operations of the PCIe device for SDMA. > > +* - dma_virt_ops for users of the

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-17 Thread Bart Van Assche
On Tue, 2017-01-17 at 15:27 -0700, Jason Gunthorpe wrote: > On Tue, Jan 17, 2017 at 10:00:00PM +, Bart Van Assche wrote: > > + /* > > +* qib and hfi1 use two sets of DMA operations: > > +* - The DMA operations of the PCIe device for SDMA. > > +* - dma_virt_ops for users of the

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-17 Thread Jason Gunthorpe
On Tue, Jan 17, 2017 at 10:00:00PM +, Bart Van Assche wrote: > + /* > + * qib and hfi1 use two sets of DMA operations: > + * - The DMA operations of the PCIe device for SDMA. > + * - dma_virt_ops for users of the qib and hfi1 drivers. > + * The only purpose of

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-17 Thread Jason Gunthorpe
On Tue, Jan 17, 2017 at 10:00:00PM +, Bart Van Assche wrote: > + /* > + * qib and hfi1 use two sets of DMA operations: > + * - The DMA operations of the PCIe device for SDMA. > + * - dma_virt_ops for users of the qib and hfi1 drivers. > + * The only purpose of

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-17 Thread Bart Van Assche
On Tue, 2017-01-17 at 13:48 -0800, Bart Van Assche wrote: > On Sat, 2017-01-14 at 02:05 +, Estrin, Alex wrote: > > [ ... ] > > please see hfi1/verbs.c @ hfi1_register_ib_device() > > [ ... ] > > Hello Alex, > > I think I figured out what I did wrong: both the hfi1 and the qib drivers >

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-17 Thread Bart Van Assche
On Tue, 2017-01-17 at 13:48 -0800, Bart Van Assche wrote: > On Sat, 2017-01-14 at 02:05 +, Estrin, Alex wrote: > > [ ... ] > > please see hfi1/verbs.c @ hfi1_register_ib_device() > > [ ... ] > > Hello Alex, > > I think I figured out what I did wrong: both the hfi1 and the qib drivers >

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-17 Thread Bart Van Assche
On Sat, 2017-01-14 at 02:05 +, Estrin, Alex wrote: > [ ... ] > please see hfi1/verbs.c @ hfi1_register_ib_device() > [ ... ] Hello Alex, I think I figured out what I did wrong: both the hfi1 and the qib drivers need two sets of DMA mapping operations. ULPs have to use _virt_ops and the

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-17 Thread Bart Van Assche
On Sat, 2017-01-14 at 02:05 +, Estrin, Alex wrote: > [ ... ] > please see hfi1/verbs.c @ hfi1_register_ib_device() > [ ... ] Hello Alex, I think I figured out what I did wrong: both the hfi1 and the qib drivers need two sets of DMA mapping operations. ULPs have to use _virt_ops and the

RE: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-13 Thread Estrin, Alex
foundation.org > Subject: Re: [PATCH v2 00/26] IB: Optimize DMA mapping > > On Fri, 2017-01-13 at 21:08 +, Estrin, Alex wrote: > > It didn't fix the failure... Apparently there is an issue with generic > > mapping itself. > > Hello Alex, > > The generic mappin

RE: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-13 Thread Estrin, Alex
> -Original Message- > From: Bart Van Assche [mailto:bart.vanass...@sandisk.com] > Sent: Friday, January 13, 2017 5:00 PM > To: Estrin, Alex ; dledf...@redhat.com > Cc: linux-kernel@vger.kernel.org; linux-r...@vger.kernel.org; > gre...@linuxfoundation.org > Subject

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-13 Thread Bart Van Assche
On Fri, 2017-01-13 at 21:08 +, Estrin, Alex wrote: > It didn't fix the failure... Apparently there is an issue with generic > mapping itself. Hello Alex, The generic mapping code in lib/dma-virt.c works fine with at least the rxe driver. Additionally, as far as I can see the mapping code in

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-13 Thread Bart Van Assche
On Fri, 2017-01-13 at 21:08 +, Estrin, Alex wrote: > It didn't fix the failure... Apparently there is an issue with generic > mapping itself. Hello Alex, The generic mapping code in lib/dma-virt.c works fine with at least the rxe driver. Additionally, as far as I can see the mapping code in

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-13 Thread Sagi Grimberg
Hello Doug, As you know there are two sets of DMA mapping operations in the Linux kernel: - One set of DMA mapping operations that is used by most drivers. - Another set of DMA mapping operations that is only used by the RDMA drivers. Having two sets of DMA mapping operations is not only a

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-13 Thread Sagi Grimberg
Hello Doug, As you know there are two sets of DMA mapping operations in the Linux kernel: - One set of DMA mapping operations that is used by most drivers. - Another set of DMA mapping operations that is only used by the RDMA drivers. Having two sets of DMA mapping operations is not only a

RE: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-13 Thread Estrin, Alex
> > Hello Alex, > > Sorry for this. Can you check whether the patch below fixes this regression? > > diff --git a/drivers/infiniband/sw/rdmavt/vt.c > b/drivers/infiniband/sw/rdmavt/vt.c > index 6a81b179f631..f7fcd015ec09 100644 > --- a/drivers/infiniband/sw/rdmavt/vt.c > +++

RE: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-13 Thread Estrin, Alex
> > Hello Alex, > > Sorry for this. Can you check whether the patch below fixes this regression? > > diff --git a/drivers/infiniband/sw/rdmavt/vt.c > b/drivers/infiniband/sw/rdmavt/vt.c > index 6a81b179f631..f7fcd015ec09 100644 > --- a/drivers/infiniband/sw/rdmavt/vt.c > +++

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-13 Thread Bart Van Assche
On Fri, 2017-01-13 at 18:27 +, Estrin, Alex wrote: > This series applied to 4.10-rc3 breaks hfi1 sdma engines. > [   34.712343] hfi1 :82:00.0: hfi1_0: SDMA (0) engine error: 0x21 > state s50_HwHaltWait > [   34.722752] hfi1 :82:00.0: hfi1_0: SDMA (0) descq_head: 0 > descq_tail: 3

Re: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-13 Thread Bart Van Assche
On Fri, 2017-01-13 at 18:27 +, Estrin, Alex wrote: > This series applied to 4.10-rc3 breaks hfi1 sdma engines. > [   34.712343] hfi1 :82:00.0: hfi1_0: SDMA (0) engine error: 0x21 > state s50_HwHaltWait > [   34.722752] hfi1 :82:00.0: hfi1_0: SDMA (0) descq_head: 0 > descq_tail: 3

RE: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-13 Thread Estrin, Alex
ss...@sandisk.com> > Subject: [PATCH v2 00/26] IB: Optimize DMA mapping > > Hello Doug, > > As you know there are two sets of DMA mapping operations in the Linux > kernel: > - One set of DMA mapping operations that is used by most drivers. > - Another set of DMA mapping

RE: [PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-13 Thread Estrin, Alex
ernel.org] On Behalf Of Bart Van Assche > Sent: Thursday, January 12, 2017 2:07 PM > To: Doug Ledford > Cc: linux-r...@vger.kernel.org; linux-kernel@vger.kernel.org; Greg > Kroah-Hartman > ; Bart Van Assche > Subject: [PATCH v2 00/26] IB: Optimize DMA mapping >

[PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-12 Thread Bart Van Assche
Hello Doug, As you know there are two sets of DMA mapping operations in the Linux kernel: - One set of DMA mapping operations that is used by most drivers. - Another set of DMA mapping operations that is only used by the RDMA drivers. Having two sets of DMA mapping operations is not only a

[PATCH v2 00/26] IB: Optimize DMA mapping

2017-01-12 Thread Bart Van Assche
Hello Doug, As you know there are two sets of DMA mapping operations in the Linux kernel: - One set of DMA mapping operations that is used by most drivers. - Another set of DMA mapping operations that is only used by the RDMA drivers. Having two sets of DMA mapping operations is not only a