[openib-general] Re: [PATCH][RFC][0/4] InfiniBand userspace verbs implementation

Timur Tabi timur.tabi at ammasso.com
Mon Apr 25 16:21:51 PDT 2005


Andrew Morton wrote:

> They are permanent until someone runs put_page() against all the pages. 
> What I'm saying is that all current callers of get_user_pages() _do_ run
> put_page() within the same syscall or upon I/O termination.

Oh, okay then.  I guess I'll get back to work!

Actually, with RDMA, "I/O termination" technically doesn't happen until the memory is 
deregistered.  When the memory is registered, all that means is that it's should be pinned 
and the virtual-to-physical should be stored.  No actual I/O occurs at that point.

>>If you look at the Infiniband code that was recently submitted, I think you'll see it does 
>>exactly that: after calling mlock(), the driver calls get_user_pages(), and it stores the 
>>page mappings for future
 >
> Where?

I was talking about the code that Roland mentioned in the first message of this thread - 
the user-space verbs support.  He said the code calls mlock() and get_user_pages().

FYI, our driver detects the process termination and cleans up everything itself.

-- 
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