Re: ioat: is DMA to MMIO supported?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Apr 14, 2014 at 06:22:58PM -0700, Simon Ustimenko wrote:
> 
> On 4/11/2014 2:30 PM, Jiang, Dave wrote:
> >On Fri, 2014-04-11 at 14:15 -0700, Simon Ustimenko wrote:
> >>we've been playing around with the I/OAT DMA, trying to make it copy
> >>from main memory to the MMIO, and we're facing troubles (incomplete
> >>transfers, kernel oops).
> >>
> >>Surprisingly, we have no problems with the DMA in the opposite direction.
> >On the Xeon platform memory -> MMIO is supported, MMIO to memory and
> >between MMIO is not. Not that you want to read from PCIe anyhow as the
> >performance is bad. PCIe Writes are posted and reads are not. You can
> >take a look at the NTB driver drivers/ntb/ in its usage of the IOATDMA
> >transfer from mem -> mmio as an example. What kind of kernel oops are
> >you hitting? And you have no issues using the CPU to copy the data to
> >those regions?
> Thanks Dave, for your response.
> 
> Sorry, cannot answer about the kernel oops. I don't really have the
> code that was used or much of the details. Only the verbal testimony
> claiming that the mem -> mmio copy with ioatdma "didn't work",
> blaming the IOAT hardware being "broken", which I find hard to
> believe. Hence the whole question about whether anyone else have
> ever used the IOAT for mem -> mmio copying in production?

As Dave was saying, the Linux NTB driver is using the ioat to copy
from mem to mmio.  I've verified its use in NTB on 4 generations of
Xeon and Atom.  I have not seen any issues.

Thanks,
Jon

> I know, however, that copying using the CPU works fine.
> 
> Regards,
> Simon
--
To unsubscribe from this list: send the line "unsubscribe dmaengine" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux PCI]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux