On Mon, Aug 01, 2005 at 06:47:41PM +0300, Muli Ben-Yehuda wrote: > On Mon, Aug 01, 2005 at 06:04:27PM +0300, Gleb Natapov wrote: > > > I don't like the idea of splitting VMAs if we can manage without it. You'll > > end up having to many of them. > > ... or you end up duplicating the VMA functionality on a sub-vma > level. Consider: > > You have a single vma with some number of pages, where some random > pages are registered and some aren't. You need to be able to check for > a given page whetehr it's registered or not, so you build some data > structure based on the stard and end address (or page, or whatever), > so that you can check if a given address is within a registered > page. But this is exactly the sort of thing that the VMA level is > built for: use the red black tree to find the vma for a given address, > then check if the vma is registered. > > Linux can already cope with a large number of vma's, I think that a > solution that does not split vma's will end up with either artificial > limitations (can't have more than two different regions within a vma) > or reimplementing vma layer functionality. Of course, I could be > completely wrong :-) The registrations are more complex than vma. Registrations can overlap vma can't. Unfortunately we will need to split vma for different reason: VM_DONTCOPY. Other then that Pete's solution already works with more then one registration in vma :)
-- Gleb. _______________________________________________ openib-general mailing list openib-general@openib.org http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general