Re: [PATCH 5/5] vfio-pci: Best-effort huge pfnmaps with !MAP_FIXED mappings
From: Jason Gunthorpe
Date: Mon Jun 16 2025 - 19:00:34 EST
On Mon, Jun 16, 2025 at 06:06:23PM -0400, Peter Xu wrote:
> Can I understand it as a suggestion to pass in a bitmask into the core mm
> API (e.g. keep the name of mm_get_unmapped_area_aligned()), instead of a
> constant "align", so that core mm would try to allocate from the largest
> size to smaller until it finds some working VA to use?
I don't think you need a bitmask.
Split the concerns, the caller knows what is inside it's FD. It only
needs to provide the highest pgoff aligned folio/pfn within the FD.
The mm knows what leaf page tables options exist. It should try to
align to the closest leaf page table size that is <= the FD's max
aligned folio.
Higher alignment would be wasteful of address space.
Lower alignment misses an opportunity to create large leaf PTEs.
Jason