Re: linux-next: build failure after merge of the mm tree

From: Andrew Morton
Date: Wed Nov 02 2022 - 17:26:48 EST


On Wed, 2 Nov 2022 14:55:32 +1100 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:

> Hi all,
>
> After merging the mm tree, today's linux-next build (arm
> multi_v7_defconfig) failed like this:
>
> mm/migrate.c: In function 'unmap_and_move_huge_page':
> mm/migrate.c:1315:13: error: implicit declaration of function 'hugetlb_folio_subpool'; did you mean 'hugetlb_page_subpool'? [-Werror=implicit-function-declaration]
> 1315 | if (hugetlb_folio_subpool(src) && !folio_mapping(src)) {
> | ^~~~~~~~~~~~~~~~~~~~~
> | hugetlb_page_subpool
> cc1: some warnings being treated as errors
>
> Caused by commit
>
> fa7dc4d80445 ("mm/hugetlb: convert move_hugetlb_state() to folios")
>
> This build does *not* have CONFIG_HUGETLB_PAGE set.
>

Thanks, let's try this:

--- a/include/linux/hugetlb.h~mm-hugetlb-convert-move_hugetlb_state-to-folios-fix
+++ a/include/linux/hugetlb.h
@@ -991,6 +991,11 @@ void hugetlb_unregister_node(struct node
#else /* CONFIG_HUGETLB_PAGE */
struct hstate {};

+static inline struct hugepage_subpool *hugetlb_folio_subpool(struct folio *folio)
+{
+ return NULL;
+}
+
static inline struct hugepage_subpool *hugetlb_page_subpool(struct page *hpage)
{
return NULL;
_