[openib-general] Reserved L_Key API
gdror at mellanox.co.il
Tue Sep 14 23:39:12 PDT 2004
> -----Original Message-----
> From: Roland Dreier [mailto:roland at topspin.com]
> Sent: Wednesday, September 15, 2004 7:55 AM
> Michael> Dont you want to basically create a physical memory
> Michael> region covering the whole 64 bit range, and then post
> Michael> full phy addresses in the WQE? Cant you do exactly that
> Michael> with existing API?
> Yes, that's the natural thing to try. However, as understand
> it, Tavor is limited to 2 GB pages, which means covering the
> whole 64-bit range is going to take 8 billion pages, which
> clearly will overflow any conceivable context memory. Other
> devices are likely to have similar limitations.
> - Roland
If you're creating a physical MR with 1:1 mapping, just turn on MPT.pa
bit. If you do that, you don't need to care about pages and you don't need
to set up MTTs. You're region will be bounded by the MPT.start_address
and MPT.start_address + MPT.reg_wnd_len. This way you can use
MRs longer than 2GB.
However, if you do believe that devices are likely to have this kind of
limitation, then I believe that it needs to be reflected in the API. When
you request this dma_mr, you'd need to specify which addresses are
to be covered in it.
One more question. If the device does supports the memory management
extensions. Will ib_get_dma_mr(NULL) be the right way to obtain the
dma_mr that will not be PD protected ? And if that fails, it means that
you need a valid PD.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the general