On Sat, Jan 18, 2020 at 11:04:21AM +0300, Konstantin Khlebnikov wrote: >On 15/01/2020 04.20, Wei Yang wrote: >> On Tue, Jan 14, 2020 at 10:42:52PM +0800, Li Xinhai wrote: >> > On 2020-01-13??at 19:07??Konstantin Khlebnikov??wrote: >> > >> > > >> > > Because I want to keep both heuristics. >> > > This seems most sane way of interaction between them. >> > > >> > > Unfortunately even this patch is slightly broken. >> > > Condition prev->anon_vma->parent == pvma->anon_vma doesn't guarantee that >> > > prev vma has the same set of anon-vmas like current vma. >> > > I.e. anon_vma_clone(vma, prev) might be not enough for keeping connectivity. >> > >> > New patch is required? >> >> My suggestion is separate the fix and new approach instead of mess them into >> one patch. > >Yep, it's messy. Maybe it's could be better to revert recent change, >apply second patch from this set and write something new after that. > It is up to you. >> >> > It is necessary to call anon_vma_clone(vma,??pvma) to link all anon_vma which >> > currently linked by pvma, then link the prev->anon_vma to vma. By this way, >> > connectivity of vma should be maintained, right? >> > >> > > Building such case isn't trivial job but I see nothing that could prevent it. >> > > >> > >> -- Wei Yang Help you, Help me