On Jun 5, 2013, at 10:14 AM, Jason Gunthorpe <jguntho...@obsidianresearch.com> 
wrote:

>> a = malloc(x);    // a gets (va=0x100, pa=0x12345) back from malloc
>> MPI_Send(a, ...); // MPI registers 0x100 for len=x, and saves (0x100,x) in 
>> reg cache
>> free(a);
>> a = malloc(x);    // a gets (va=0x100, pa=0x98765) back from malloc
>> MPI_Send(a, ...); // MPI sees a=0x100 and things that it is already 
>> registered
>> // ...kaboom
> 
> ODP is supposed to completely solve this problem. The HCA's view and
> Kernels view of virtual to physical mapping becomes 100% synchronized,
> and there is no 'kaboom'. The kernel updates the HCA after the free,
> and after the 2nd malloc to 100% match the current virtual memory map
> in the process.

Are you saying that the 2nd malloc will magically be registered (with the new 
physical address)?

> AFAIK the ummunotify user space API was nak'd by the core kernel
> guys.

It was NAK'ed by Linus, saying "fix your own network stack; this is not needed 
in the general purpose part of the kernel" (remember that Roland initially 
developed this as a standalone, non-IB-related kernel module).  

> I got the impression people thought it would be acceptable as a
> rdma API, not a general API. So it is waiting on someone to recast the
> function within verbs to make progress...

'zactly.  Roland has this ummunot branch in his git tree, where he is in the 
middle of incorporating this functionality from the original ummunotify 
standalone kernel module into libibverbs and ibcore.

I started this thread asking the status of that branch.

-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to: 
http://www.cisco.com/web/about/doing_business/legal/cri/

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to