Re: [PATCH 03/21] mm/hugetlb: correct demote page offset logic

From: Matthew Wilcox
Date: Tue Sep 13 2022 - 19:35:02 EST


On Tue, Sep 13, 2022 at 12:54:50PM -0700, Doug Berger wrote:
> With gigantic pages it may not be true that struct page structures
> are contiguous across the entire gigantic page. The mem_map_offset
> function is used here in place of direct pointer arithmetic to
> correct for this.

We're just eliminating mem_map_offset(). Please use nth_page()
instead.

> for (i = 0; i < pages_per_huge_page(h);
> i += pages_per_huge_page(target_hstate)) {
> + subpage = mem_map_offset(page, i);
> if (hstate_is_gigantic(target_hstate))