Messages in this thread | | | Date | Fri, 22 Apr 2005 12:55:22 -0500 | From | Timur Tabi <> | Subject | Re: [PATCH][RFC][0/4] InfiniBand userspace verbs implementation |
| |
Arjan van de Ven wrote: > On Mon, 2005-04-18 at 11:09 -0500, Timur Tabi wrote: > >>Roland Dreier wrote: >> >>> Troy> How is memory pinning handled? (I haven't had time to read >>> Troy> all the code, so please excuse my ignorance of something >>> Troy> obvious). >>> >>>The userspace library calls mlock() and then the kernel does >>>get_user_pages(). >> >>Why do you call mlock() and get_user_pages()? In our code, we only call mlock(), and the >>memory is pinned. > > > this is a myth; linux is free to move the page about in physical memory > even if it's mlock()ed!!
Can you tell me when Linux actually does this? I know in theory it can happen, but I've never seen it. Does the code to implement moving of data from one physical page to another even exist in any version of Linux?
Also, what would be the point? What reason would there be to move some data from one physical page to another, while keeping the same virtual address?
-- Timur Tabi Staff Software Engineer timur.tabi@ammasso.com
One thing a Southern boy will never say is, "I don't think duct tape will fix it." -- Ed Smylie, NASA engineer for Apollo 13 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |