On Mon, Apr 11, 2005 at 08:34:19AM -0700, Roland Dreier wrote: > Troy> How is memory pinning handled? (I haven't had time to read > Troy> all the code, so please excuse my ignorance of something > Troy> obvious). > > The userspace library calls mlock() and then the kernel does > get_user_pages().
Is there a check in the kernel that the memory is actually mlock()ed? What if a malicious (or broken) application does ibv_reg_mr() but doesn't lock the memory? Does the IB card get a physical address for a page that might get swapped out? > Troy> The old mellanox drivers used to have a hack to call > Troy> 'sys_mlock', and promiscuously lock memory any old userspace > Troy> application asked for. What is the API for the new uverbs > Troy> memory registration, and how will things like memory hotplug > Troy> and NUMA page migration be able to unpin pages locked by a > Troy> user program? > > The API for uverbs memory registration is ibv_reg_mr(), and right now > the memory is pinned and that's it. > > - R. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/