This looks good to me.
One minor suggestion: change the new inline function mca_mpool_rdma_deregister_lru() to return a bool instead of an int (since it only returns 0/1 anyway).
And the name "lru" makes more sense to me, too.
As Nathan mentioned, this patch addresses the case where we can evict some still-registered memory from rcache that isn't currently being used:
But fixing #2157 won't help if we genuinely run out of registered memory (i.e., there's no more registered memory to evict), covered by these two tickets:
On Nov 30, 2011, at 7:33 PM, Nathan Hjelm wrote:
> Attached is a fix for ticket 2157. Changes:
> - Rename the mru_list to lru_list. lru_list make more sense as it is a list of the Least Recently Used cached registrations.
> - If a memory registration fails because we are out of resources deregister the least recently used cached registration and try again. Give up when the lru is empty.
> This patch addresses 2157 but it might also have a positive impact on a number of other tickets related to the exhaustion of registered memory.
> If there are no objections I will apply this change to the trunk and CMR it to 1.4.5 and 1.5.4.
> Timeout: 7 days, Dec 7, 2011
> What: fix for ticket 2157
> Question? Comments? Objections?
> devel mailing list
For corporate legal information go to: