[openib-general] Re: RDMA memory registration

Caitlin Bestler caitlin.bestler at gmail.com
Fri Apr 29 14:34:06 PDT 2005


On 4/29/05, Roland Dreier <roland at topspin.com> wrote:
>     Bill> I'm very confused at this point. Can you briefly explain how
>     Bill> this works, or point me to a description? I don't see how
>     Bill> you could do user level I/O without registering the memory
>     Bill> with the hardware. I'm especially confused by the comment
>     Bill> (may not have been yours) that the memory doesn't have to be
>     Bill> pinned.  -- Bill Jordan InfiniCon Systems
> 
> You add a hook to the kernel so it tells you if a page is about to be
> paged out or otherwise move.  Then you set a bit in the adapter's page
> table so that it won't try to access that page without telling you.
> If the adapter asks for the page, you get the kernel to fault the page
> in and program the new physical mapping in the adapter.
> 

Yes, and you could even have a system that was capable of doing
DMA to a user virtual map (in fact some minis back around 1980
had exactly that capability).

But there are *two* issues involved here:

    One is that the RDMA hardware, however it is marketed, essentially
    needs to act as an MMU. That means that it has to be synchronized
    with normal MMU. The traditional sledge-hammer approach to 

> _______________________________________________
> openib-general mailing list
> openib-general at openib.org
> http://openib.org/mailman/listinfo/openib-general
> 
> To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
>



More information about the general mailing list