Re: [PATCH v4 19/66] mm: Optimize find_exact_vma() to use vma_lookup()

From: Vlastimil Babka
Date: Wed Jan 12 2022 - 11:31:13 EST


On 12/1/21 15:29, Liam Howlett wrote:
> From: "Liam R. Howlett" <Liam.Howlett@xxxxxxxxxx>
>
> Use vma_lookup() to walk the tree to the start value requested. If
> the vma at the start does not match, then the answer is NULL and there
> is no need to look at the next vma the way that find_vma() would.
>
> Signed-off-by: Liam R. Howlett <Liam.Howlett@xxxxxxxxxx>

Reviewed-by: Vlastimil Babka <vbabka@xxxxxxx>

> ---
> include/linux/mm.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index 784f8fec3b65..c08f6d541b8a 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -2879,7 +2879,7 @@ static inline unsigned long vma_pages(struct vm_area_struct *vma)
> static inline struct vm_area_struct *find_exact_vma(struct mm_struct *mm,
> unsigned long vm_start, unsigned long vm_end)
> {
> - struct vm_area_struct *vma = find_vma(mm, vm_start);
> + struct vm_area_struct *vma = vma_lookup(mm, vm_start);
>
> if (vma && (vma->vm_start != vm_start || vma->vm_end != vm_end))
> vma = NULL;