Mike Kravetz [off-list ref] writes:
zap_page_range was originally designed to unmap pages within an address
range that could span multiple vmas. While working on [1], it was
discovered that all callers of zap_page_range pass a range entirely within
a single vma. In addition, the mmu notification call within zap_page
range does not correctly handle ranges that span multiple vmas as calls
should be vma specific.
Instead of fixing zap_page_range, change all callers to use the new
routine zap_vma_page_range. zap_vma_page_range is just a wrapper around
zap_page_range_single passing in NULL zap details. The name is also
more in line with other exported routines that operate within a vma.
We can then remove zap_page_range.
Also, change madvise_dontneed_single_vma to use this new routine.
[1] https://lore.kernel.org/linux-mm/20221114235507.294320-2-mike.kravetz@oracle.com/ (local)
Suggested-by: Peter Xu <peterx@redhat.com>
Signed-off-by: Mike Kravetz <redacted>
---
arch/arm64/kernel/vdso.c | 4 ++--
arch/powerpc/kernel/vdso.c | 2 +-
arch/powerpc/platforms/book3s/vas-api.c | 2 +-
arch/powerpc/platforms/pseries/vas.c | 2 +-
Acked-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc)
cheers