Re: How to avoid data copies in a driver ?

Lennart Sorensen
2008-05-15T13:59:16Z

On Thu, May 15, 2008 at 09:44:37AM +0200, Francis Moreau wrote:
> So I would need to map this pointer into the kernel space, then fill it, take
> care of cache coherency, unmap the kernel pointer.
>
> Do you have any example of that in the kernel tree ?

I was asking if that would work. Does the to_user and from_user work on
a pointer from user space if that pointer points at a memory mapped
file?

> BTW, data are received in interrupt context. Is it safe to put them in mapped
> memory (can I have page fault ?) in this context ?

Oh I thought you just wanted user space to be able to ask for a chunk of
data. I wouldn't want to write to a file in an interrupt handler.
Compared to the disk I/O a memory copy sounds rather insignificant to
the overall process.

--
Len Sorensen