[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20251218165538.b299508aacdaf7d941035ec3@linux-foundation.org>
Date: Thu, 18 Dec 2025 16:55:38 -0800
From: Andrew Morton <akpm@...ux-foundation.org>
To: Gregory Price <gourry@...rry.net>
Cc: linux-mm@...ck.org, linux-doc@...r.kernel.org,
linux-kernel@...r.kernel.org, kernel-team@...a.com, david@...nel.org,
osalvador@...e.de, lorenzo.stoakes@...cle.com, Liam.Howlett@...cle.com,
vbabka@...e.cz, rppt@...nel.org, surenb@...gle.com, mhocko@...e.com,
corbet@....net, muchun.song@...ux.dev, laoar.shao@...il.com,
brauner@...nel.org, jack@...e.cz, hannes@...xchg.org,
mclapinski@...gle.com, joel.granados@...nel.org, David Hildenbrand
<david@...hat.com>, Mel Gorman <mgorman@...e.de>, David Rientjes
<rientjes@...gle.com>
Subject: Re: [PATCH v4] mm, hugetlb: implement movable_gigantic_pages sysctl
On Thu, 18 Dec 2025 10:12:11 -0500 Gregory Price <gourry@...rry.net> wrote:
> This reintroduces a concept removed by:
> commit d6cb41cc44c6 ("mm, hugetlb: remove hugepages_treat_as_movable sysctl")
>
> This sysctl provides flexibility between ZONE_MOVABLE use cases:
> 1) onlining memory in ZONE_MOVABLE to maintain hotplug compatibility
> 2) onlining memory in ZONE_MOVABLE to make hugepage allocate reliable
My x86_64 allmodconfig blew up.
> ...
>
> --- a/mm/hugetlb.c
> +++ b/mm/hugetlb.c
> @@ -49,7 +49,6 @@
> #include "internal.h"
> #include "hugetlb_vmemmap.h"
> #include "hugetlb_cma.h"
> -#include "hugetlb_internal.h"
> #include <linux/page-isolation.h>
What's that doing there? I put it back. Helped!
But the build still failed because the patch refers to
extern int movable_gigantic_pages __read_mostly;
but forgot to define it. v5, please ;)
mm/hugetlb.c:497:56: error: 'struct hugetlb_cgroup' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
497 | static void record_hugetlb_cgroup_uncharge_info(struct hugetlb_cgroup *h_cg,
| ^~~~~~~~~~~~~~
mm/hugetlb.c: In function 'record_hugetlb_cgroup_uncharge_info':
mm/hugetlb.c:505:30: error: invalid use of undefined type 'struct hugetlb_cgroup'
505 | &h_cg->rsvd_hugepage[hstate_index(h)];
| ^~
mm/hugetlb.c:506:33: error: invalid use of undefined type 'struct hugetlb_cgroup'
506 | nrg->css = &h_cg->css;
| ^~
mm/hugetlb.c:517:30: error: invalid use of undefined type 'struct hugetlb_cgroup'
517 | css_get(&h_cg->css);
| ^~
mm/hugetlb.c: At top level:
mm/hugetlb.c:580:56: error: 'struct hugetlb_cgroup' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
<and much more>
Powered by blists - more mailing lists