Re: [PATCH for-next 2/4] RDMA/hns: Add IOMMU enable support in hip08

Leon Romanovsky
2017-10-18T14:23:28Z

[-- Attachment #1: Type: text/plain, Size: 1628 bytes --]

On Wed, Oct 18, 2017 at 05:12:02PM +0800, Wei Hu (Xavier) wrote:
>
>
> On 2017/10/18 16:42, Wei Hu (Xavier) wrote:
> >
> >
> > On 2017/10/1 0:10, Leon Romanovsky wrote:
> > > On Sat, Sep 30, 2017 at 05:28:59PM +0800, Wei Hu (Xavier) wrote:
> > > > If the IOMMU is enabled, the length of sg obtained from
> > > > __iommu_map_sg_attrs is not 4kB. When the IOVA is set with the sg
> > > > dma address, the IOVA will not be page continuous. and the VA
> > > > returned from dma_alloc_coherent is a vmalloc address. However,
> > > > the VA obtained by the page_address is a discontinuous VA. Under
> > > > these circumstances, the IOVA should be calculated based on the
> > > > sg length, and record the VA returned from dma_alloc_coherent
> > > > in the struct of hem.
> > > >
> > > > Signed-off-by: Wei Hu (Xavier) <xavier.huwei-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
> > > > Signed-off-by: Shaobo Xu <xushaobo2-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
> > > > Signed-off-by: Lijun Ou <oulijun-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
> > > > ---
> > > Doug,
> > >
> > > I didn't invest time in reviewing it, but having "is_vmalloc_addr" in
> > > driver code to deal with dma_alloc_coherent is most probably wrong.
> > >
> > > Thanks
> > >
> > Hi, Doug
> > When running in ARM64 platform, there probably be calltrace
> > currently.
> > Now our colleague will report it to iommu maillist and try to solve
> > it.
> > I also think RoCE driver shouldn't sense the difference.
> > I will pull it out of this series and send v2.
> > Thanks.
> >
> Hi, Doug & Leon
> I have sent patch v2.
> Thanks
>

Thanks

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]