[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <cbfac346-3b71-fffb-65f6-3566a00366a4@sandisk.com>
Date: Fri, 9 Dec 2016 11:46:30 -0800
From: Bart Van Assche <bart.vanassche@...disk.com>
To: David Woodhouse <dwmw2@...radead.org>,
Christoph Hellwig <hch@....de>
CC: Doug Ledford <dledford@...hat.com>,
Sagi Grimberg <sagi@...mberg.me>,
"linux-rdma@...r.kernel.org" <linux-rdma@...r.kernel.org>,
<virtualization@...ts.linux-foundation.org>,
<linux-arch@...r.kernel.org>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 3/5] Move dma_ops from archdata into struct device
On 12/09/2016 11:13 AM, David Woodhouse wrote:
> On Fri, 2016-12-09 at 19:22 +0100, Christoph Hellwig wrote:
>> We'll need a bit of a wieder audience for this I think..
>>
>> On Wed, Dec 07, 2016 at 05:11:28PM -0800, Bart Van Assche wrote:
>>> Additionally, introduce set_dma_ops(). A later patch will introduce a
>>> call to that function in the RDMA drivers that will be modified to use
>>> dma_noop_ops.
>>
>> This looks good to me, and we had a lot of talk about this for other
>> purposes for a while.
>
> Hm, I'm not convinced we want per-device dma_ops. What we want is per-
> device IOMMU ops, and any dma_ops are just a generic or platform-
> specific (in some cases) wrapper around those. We shouldn't normally
> need per-device DMA ops at all.
Hello David,
Can you recommend an approach for e.g. the qib driver
(drivers/infiniband/hw/qib)? That driver uses the CPU (PIO) instead of
DMA to transfer data to a PCIe device. Sorry but I don't see how
per-device IOMMU ops would allow to avoid that e.g. a cache flush is
triggered before PIO starts.
Bart.
Powered by blists - more mailing lists