Re: [PATCH 3/5] mm: Rename __thp_get_unmapped_area to mm_get_unmapped_area_aligned
From: Jason Gunthorpe
Date: Fri Jun 13 2025 - 10:22:29 EST
On Fri, Jun 13, 2025 at 09:41:09AM -0400, Peter Xu wrote:
> @@ -1088,7 +1088,7 @@ static inline bool is_transparent_hugepage(const struct folio *folio)
> folio_test_large_rmappable(folio);
> }
>
> -static unsigned long __thp_get_unmapped_area(struct file *filp,
> +unsigned long mm_get_unmapped_area_aligned(struct file *filp,
> unsigned long addr, unsigned long len,
> loff_t off, unsigned long flags, unsigned long size,
> vm_flags_t vm_flags)
Please add a kdoc for this since it is going to be exported..
I didn't intuitively guess how it works or why there are two
length/size arguments. It seems to have an exciting return code as
well.
I suppose size is the alignment target? Maybe rename the parameter too?
For the purposes of VFIO do we need to be careful about math overflow here:
loff_t off_end = off + len;
loff_t off_align = round_up(off, size);
?
Jason