Re: [PATCH] lib/scatterlist: Provide a DMA page iterator

From: Jason Gunthorpe
Date: Thu Jan 17 2019 - 10:54:23 EST


On Thu, Jan 17, 2019 at 10:30:01AM +0100, hch@xxxxxx wrote:
> On Wed, Jan 16, 2019 at 10:24:36AM -0700, Jason Gunthorpe wrote:
> > The fact is there is 0 industry interest in using RDMA on platforms
> > that can't do HW DMA cache coherency - the kernel syscalls required to
> > do the cache flushing on the IO path would just destroy performance to
> > the point of making RDMA pointless. Better to use netdev on those
> > platforms.
>
> In general there is no syscall required for doing cache flushing, you
> just issue the proper instructions directly from userspace.

At least on the ARM/MIPS systems I've worked with like this the cache
manipulation instructions are privileged and cannot be executed by
userspace. So the general case requires a syscall.

> In that case we just need to block userspace DMA access entirely.
> Which given the amount of problems it creates sounds like a pretty
> good idea anyway.

I doubt there is any support for that idea...

Jason