Messages in this thread | | | Date | Wed, 5 May 2010 08:31:42 -0700 (PDT) | From | Linus Torvalds <> | Subject | Re: [PATCH 1/2] mm,migration: Prevent rmap_walk_[anon|ksm] seeing the wrong VMA information |
| |
On Wed, 5 May 2010, Mel Gorman wrote: > > rmap_walk() appears to be the only one that takes multiple locks but it itself > is not serialised. If there are more than one process calling rmap_walk() > on different processes sharing the same VMAs, is there a guarantee they walk > it in the same order?
So I had this notion of the list always getting deeper and us guaranteeing the order in it, but you're right - that's not the 'same_anon_vma' list, it's the 'same_vma' one.
Damn. So yeah, I don't see us guaranteeing any ordering guarantees. My bad.
That said, I do wonder if we could _make_ the ordering reliable. I did that for the 'same_vma' one, because I wanted to be able to verify that chains were consistent (and we also needed to be able to find the "oldest anon_vma" for the case of re-instantiating pages that migth exist in multiple different anon_vma's).
Any ideas?
Linus
| |