On 2023/12/29 19:15, David Hildenbrand wrote:
On 29.12.23 09:49, Matthew Wilcox wrote:
On Fri, Dec 29, 2023 at 04:22:07PM +0800, Kefeng Wang wrote:
The clear and copy of huge gigantic page has converted to use nth_page()
to handle the possible discontinuous struct page(SPARSEMEM without
VMEMMAP),
but not change for the non-gigantic part, fix it too.
Can there be discontiguities within a non-gigantic huge page? My
impression was that you can't have a discontiguity at such a small
boundary.
No, we can't. MAX_ORDER allocations from the buddy always completely fit
into a memory section.
On ARM64, we have 32M(16*2M) HugeTLB, it maybe not within a mem section,
right?
But after v5.13 commit 782276b4d0ad ("arm64: Force SPARSEMEM_VMEMMAP
as the only memory management model"), it looks only old lts, eg, 5.10
could meet this issue.