[openib-general] Re: [PATCH][RFC][0/4] InfiniBand userspace verbs implementation
Timur Tabi
timur.tabi at ammasso.com
Fri Apr 22 10:55:22 PDT 2005
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 at 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
More information about the general
mailing list