Re: [PATCH v4 15/66] mm: Convert vma_lookup() to use the Maple Tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Vlastimil Babka <vbabka@xxxxxxx> [211227 11:58]:
> Re: subject. It already uses the Maple Tree via find_vma(). So more accurate
> would be e.g. "to use mtree_load()"?

Agreed, I will change the subject to better reflect this change.

> 
> Note there's also the side-effect of not using vmacache anymore (which is
> still used in find_vma()), thus again potentially biasing results of later
> vmacache removal. But seems like vma_lookup() is not used from hotpaths, so
> it should be fine.

yes, this will affect the testing of the single patch removing the VMA
if left this way.  I'd like to point out that the testing of the VMA
cache removal was done with the entire patch set, so the results are
still valid.

> 
> On 12/1/21 15:29, Liam Howlett wrote:
> > From: "Matthew Wilcox (Oracle)" <willy@xxxxxxxxxxxxx>
> > 
> > Unlike the rbtree, the Maple Tree will return a NULL if there's
> > nothing at a particular address.
> > 
> > Signed-off-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx>
> > Signed-off-by: Liam R. Howlett <Liam.Howlett@xxxxxxxxxx>
> 
> Acked-by: Vlastimil Babka <vbabka@xxxxxxx>
> 
> > ---
> >  include/linux/mm.h | 7 +------
> >  1 file changed, 1 insertion(+), 6 deletions(-)
> > 
> > diff --git a/include/linux/mm.h b/include/linux/mm.h
> > index 4d5ab70b1f6d..c28bd97a4ecd 100644
> > --- a/include/linux/mm.h
> > +++ b/include/linux/mm.h
> > @@ -2845,12 +2845,7 @@ struct vm_area_struct *find_vma_intersection(struct mm_struct *mm,
> >  static inline
> >  struct vm_area_struct *vma_lookup(struct mm_struct *mm, unsigned long addr)
> >  {
> > -	struct vm_area_struct *vma = find_vma(mm, addr);
> > -
> > -	if (vma && addr < vma->vm_start)
> > -		vma = NULL;
> > -
> > -	return vma;
> > +	return mtree_load(&mm->mm_mt, addr);
> >  }
> >  
> >  static inline unsigned long vm_start_gap(struct vm_area_struct *vma)
> 
> 
> -- 
> maple-tree mailing list
> maple-tree@xxxxxxxxxxxxxxxxxxx
> https://lists.infradead.org/mailman/listinfo/maple-tree




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux