On Tue, Nov 25, 2025 at 02:21:16PM -0500, Peter Xu wrote: > Hi, Mike, > > On Tue, Nov 25, 2025 at 08:38:38PM +0200, Mike Rapoport wrote: > > From: "Mike Rapoport (Microsoft)" <[email protected]> > > > > When a VMA is registered with userfaulfd in minor mode, its ->fault() > > method should check if a folio exists in the page cache and if yes > > ->fault() should call handle_userfault(VM_UFFD_MISSING). > > s/MISSING/MINOR/
Thanks, fixed. > > new VM_FAULT_UFFD_MINOR there instead. > > Personally I'd keep the fault path as simple as possible, because that's > the more frequently used path (rather than when userfaultfd is armed). I > also see it slightly a pity that even with flags introduced, it only solves > the MINOR problem, not MISSING. With David's suggestion the likely path remains unchanged. As for MISSING, let's take it baby steps. We have enough space in vm_fault_reason for UFFD_MISSING if we'd want to pull handle_userfault() from shmem and hugetlb. > If it's me, I'd simply export handle_userfault().. I confess I still don't > know why exporting it is a problem, but maybe I missed something. It's not only about export, it's also about not requiring ->fault() methods for pte-mapped memory call handle_userfault(). > Only my two cents. Feel free to go with whatever way you prefer. > > Thanks, > > -- > Peter Xu > -- Sincerely yours, Mike.

