Re: [PATCH v1 10/16] mm/memory: use __zap_vma_range() in zap_vma_for_reaping()

"David Hildenbrand (Arm)" <[email protected]> Wed, 11 Mar 2026 09:18:41 +0100
Newsgroups org.kernel.vger.linux-sgx,org.freedesktop.lists.dri-devel,org.freedesktop.lists.intel-gfx,org.kernel.vger.bpf,org.kernel.vger.kvm,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-kernel,org.kernel.vger.linux-perf-users,org.kernel.vger.linux-rdma,org.kernel.vger.linux-s390,org.kernel.vger.netdev,org.kernel.vger.rust-for-linux,org.kvack.linux-mm,org.ozlabs.lists.linuxppc-dev
Message-ID <[email protected]>
On 3/6/26 13:26, Lorenzo Stoakes (Oracle) wrote:
> On Fri, Feb 27, 2026 at 09:08:41PM +0100, David Hildenbrand (Arm) wrote:
>> Let's call __zap_vma_range() instead of unmap_page_range() to prepare
>> for further cleanups.
>>
>> To keep the existing behavior, whereby we do not call uprobe_munmap()
>> which could block, add a new "reaping" member to zap_details and use it.
> 
> I am always in favour of making further use of helper structs :)
> 
>>
>> Likely we should handle the possible blocking in uprobe_munmap()
>> differently, but for now keep it unchanged.
>>
>> Signed-off-by: David Hildenbrand (Arm) <[email protected]>
> 
> OK this looks like it's doing the equivalent of what was there before, so:
> 
> Reviewed-by: Lorenzo Stoakes (Oracle) <[email protected]>

[...]

>> @@ -2111,11 +2115,12 @@ static void __zap_vma_range(struct mmu_gather *tlb, struct vm_area_struct *vma,
>>   */
>>  int zap_vma_for_reaping(struct vm_area_struct *vma)
>>  {
>> +	struct zap_details details = {
>> +		.reaping = true,
>> +	};
>>  	struct mmu_notifier_range range;
>>  	struct mmu_gather tlb;
>>
>> -	VM_WARN_ON_ONCE(is_vm_hugetlb_page(vma));
>> -
> 
> I guess because you've moved this safety check into __zap_vma_range()?

Yes exactly, considered the change too trivial to mention it in the
patch description.

Thanks!

-- 
Cheers,

David