[ofa-general] Re: New proposal for memory management
Jason Gunthorpe
jgunthorpe at obsidianresearch.com
Wed Apr 29 15:44:11 PDT 2009
On Wed, Apr 29, 2009 at 03:28:00PM -0700, Ralph Campbell wrote:
> Besides, mmap() only allocates a virtual address range in the user's
> address space. It doesn't fault in all the pages into physical memory.
> That happens when the application tries to read or write memory in
> the VA range of the mmap. The IB memory registrations need physical
> addresses and it would be impractical to do this for every mmap or
> brk.
If your goal is to keep the mr consistent then you only need to fault
and pin pages from the new mmap that intersect with pre-existing
memory registrations.
I chucked out 3 things to consider:
- Pin and register all process memory (no swap!)
- Keep the MR consistent by pinning and registering new mmaps
that intersect with pre-existing memory registrations
- Keep the MR consistent by preventing the kernel from returning
new mmaps that overlap existing memory registrations.
Jason
More information about the general
mailing list