(cc restored. Please always do reply-to-all).I don't know of any vendor's kernels that support this (but then I run vanilla kernels on Debian). I just grep'ed for the patch because it sounded interesting. There was a posting for it to l-k on 26th April 2005 from David Addison of Quadrics Ltd xref http://lkml.org/lkml/2005/4/26/198 According to David, you (Andrew) and Andrea Arcangeli asked for it to be posted for some feedback, the main feedback was on whitespace issues and COWs w.r.t. fork(). Brice Goglin made an interesting comment about using a similar method but tracking VMAs rather than address spaces. By the looks of things it never went into the mainline kernel. I lurk a bit (I sometimes miss things) on l-k but I hadn't noticed any other methods for dynamic DMA direct to user space (other than pinning pages), is there anything planned?
On Wed, 14 Mar 2007 08:35:07 +0000 Matt Keenan <tank.en.mate@xxxxxxxxx> wrote:
Christoph Hellwig wrote:
On Tue, Mar 13, 2007 at 08:15:25PM +0100, Zoltan Menyhart wrote:It looks like this function exists as a part of patches to support Quadrics NICs / RDMA (HPC platforms). The patches are there so the driver doesn't need to pin pages, it can be informed of page updates directly. A patch was submitted to l-k sometime in 2005.
I had a look at copy_one_pte().There is no such thing as ioproc_update_page in any mainline tree.
I cannot see any ioproc_update_page() call, not even for the COW pages.
Is it intentional?
You must be looking at some vendor tree with braindead patches applied.
Oh Dear.
Which vendor's kernel are we talking about here?