Re: [PATCH v2 1/3] mm: fixup pfnmap memory failure handling to use pgoff
From: Ankit Agrawal
Date: Wed Dec 17 2025 - 17:46:03 EST
>> i_mmap_lock_read(mapping);
>> rcu_read_lock();
>> @@ -2226,9 +2230,12 @@ static void collect_procs_pfn(struct address_space *mapping,
>> t = task_early_kill(tsk, true);
>> if (!t)
>> continue;
>> - vma_interval_tree_foreach(vma, &mapping->i_mmap, pfn, pfn) {
>> - if (vma->vm_mm == t->mm)
>> - add_to_kill_pfn(t, vma, to_kill, pfn);
>> + vma_interval_tree_foreach(vma, &mapping->i_mmap, 0, ULONG_MAX) {
>> + pgoff_t pgoff;
>
> IIUC, all vma will be traversed to find the final pgoff. This might not be a good idea
> because rcu lock is held and this traversal might take a really long time. Or am I miss
> something?
Hi Miaohe, the VMAs on the registered address space will be checked. For the nvgrace-gpu
user of this API in 3/3, there are only 3 VMAs on the registered address space (that are
associated with the vfio file).