Message ID | 20230404094515.1883552-1-zhangpeng362@huawei.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | mm/madvise: Use vma_lookup() instead of find_vma() | expand |
* Peng Zhang <zhangpeng362@huawei.com> [230404 05:45]: > From: ZhangPeng <zhangpeng362@huawei.com> > > Using vma_lookup() verifies the address is contained in the found vma. > This results in easier to read the code. > > Signed-off-by: ZhangPeng <zhangpeng362@huawei.com> Reviewed-by: Liam R. Howlett <Liam.Howlett@oracle.com> > --- > mm/madvise.c | 14 +------------- > 1 file changed, 1 insertion(+), 13 deletions(-) > > diff --git a/mm/madvise.c b/mm/madvise.c > index 340125d08c03..405a2c4a0a18 100644 > --- a/mm/madvise.c > +++ b/mm/madvise.c > @@ -852,21 +852,9 @@ static long madvise_dontneed_free(struct vm_area_struct *vma, > *prev = NULL; /* mmap_lock has been dropped, prev is stale */ > > mmap_read_lock(mm); > - vma = find_vma(mm, start); > + vma = vma_lookup(mm, start); > if (!vma) > return -ENOMEM; > - if (start < vma->vm_start) { > - /* > - * This "vma" under revalidation is the one > - * with the lowest vma->vm_start where start > - * is also < vma->vm_end. If start < > - * vma->vm_start it means an hole materialized > - * in the user address space within the > - * virtual range passed to MADV_DONTNEED > - * or MADV_FREE. > - */ > - return -ENOMEM; > - } > /* > * Potential end adjustment for hugetlb vma is OK as > * the check below keeps end within vma. > -- > 2.25.1 > >
diff --git a/mm/madvise.c b/mm/madvise.c index 340125d08c03..405a2c4a0a18 100644 --- a/mm/madvise.c +++ b/mm/madvise.c @@ -852,21 +852,9 @@ static long madvise_dontneed_free(struct vm_area_struct *vma, *prev = NULL; /* mmap_lock has been dropped, prev is stale */ mmap_read_lock(mm); - vma = find_vma(mm, start); + vma = vma_lookup(mm, start); if (!vma) return -ENOMEM; - if (start < vma->vm_start) { - /* - * This "vma" under revalidation is the one - * with the lowest vma->vm_start where start - * is also < vma->vm_end. If start < - * vma->vm_start it means an hole materialized - * in the user address space within the - * virtual range passed to MADV_DONTNEED - * or MADV_FREE. - */ - return -ENOMEM; - } /* * Potential end adjustment for hugetlb vma is OK as * the check below keeps end within vma.