[openib-general] kernel VM monitor for memory registration caching
Roland Dreier
rolandd at cisco.com
Mon Aug 1 06:12:24 PDT 2005
Gleb> First of all, you have one user_delta per mm that user can
Gleb> poll from userspace. Is it possible to make user_delta to be
Gleb> part of dreg_region instead of dreg_context and module will
Gleb> set it whenever registration becomes invalid. Field
Gleb> 'invalid' will be added to buf_info structure and pointer to
Gleb> it will be passed to kernel at registration time. This way
Gleb> the userpace can look up cache and check if registration is
Gleb> still valid. No need to rescan cache from userspace, we
Gleb> already scanned it once from kernel after all. With your
Gleb> current approach userspace will need to search for mr_handle
Gleb> in the cache and invalidate the entry that holds it.
That idea sounds familiar ;)
Gleb> You change vma_ops in vma to catch open/close events. What
Gleb> about nopage() method in vma_ops? We have to forward it to
Gleb> original vma_ops?
Can nopage ever affect registered memory? The registration process
makes sure the pages are resident and pinned, so I don't see how a
region's mapping could ever be changed by a call to a vma's nopage method.
- R.
More information about the general
mailing list