Peter Zijlstra wrote:
> No indeed. You seem confused with remaining and new.
>
> It has one VMA (A) it needs to split that into two pieces, it happens to
> do it like (B,A') where A' is the old VMA object with new a start
> address, and B is a new VMA object.
Is there any rules to decide which VMA is the new one ?
>From what you wrote it seems that we call B the new object because
it has a new end address...
>From my point of view, I called B the old VMA simply because it's
going to be destroyed...
Francis
___________________________________________________________________________
Yahoo! Mail r?invente le mail ! D?couvrez le nouveau Yahoo! Mail et son interface r?volutionnaire.
http://fr.mail.yahoo.com
On Fri, 2006-11-17 at 14:12 +0000, moreau francis wrote:
> Peter Zijlstra wrote:
> > No indeed. You seem confused with remaining and new.
> >
> > It has one VMA (A) it needs to split that into two pieces, it happens to
> > do it like (B,A') where A' is the old VMA object with new a start
> > address, and B is a new VMA object.
>
> Is there any rules to decide which VMA is the new one ?
The new object is the one allocated using:
new = kmem_cache_alloc(vm_area_cachep, SLAB_KERNEL);
> From what you wrote it seems that we call B the new object because
> it has a new end address...
No, because its newly allocated.
> From my point of view, I called B the old VMA simply because it's
> going to be destroyed...
Please read Mel Gorman's book on memory management to gain a better
understanding.
http://www.phptr.com/bookstore/product.asp?isbn=0131453483&rl=1