Re: RDMA memory registration (was: [openib-general] Re: [PATCH][RFC][0/4] InfiniBand userspace verbs implementation)

Bill Jordan
2005-04-29T19:43:20Z

On 4/29/05, Roland Dreier <roland@topspin.com> wrote:
> b) (maybe someday?) Add a VM_ALWAYSCOPY flag and extend mprotect()
> with PROT_ALWAYSCOPY so processes can mark pages to be
> pre-copied into child processes, to handle the case where only
> half a page is registered.

Are you suggesting making the partial pages their own VMA, or marking
the entire buffer with this flag? I originally thought the entire
buffer should be copy on fork (instead of copy on write), and I
believe this is the path Mellanox was pursing with the VM_NO_COW flag.
However, if applications are registering gigs of ram, it would be very
bad to have the entire area copied on fork.

On the other hand, I've always wondered about the choice to leave
holes in the child process's address space. I would have chosen to map
the zero page instead.

--
Bill Jordan
InfiniCon Systems