[PATCH 6.18 000/552] 6.18.50-rc1 review
Dominique Martinet
asmadeus at codewreck.org
Sat Sep 5 04:49:04 PDT 2026
Miguel Ojeda wrote on Sat, Sep 05, 2026 at 01:41:11PM +0200:
> I see the same arm32 build issue:
>
> mm/page_vma_mapped.c:110:11: error: call to undeclared function 'huge_ptep_get'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
> 110 | ptent = huge_ptep_get(pvmw->vma->vm_mm, pvmw->address,
> | ^
>
> In addition, in UML (x86_64) there is also nearby:
>
> mm/page_vma_mapped.c:110:9: error: assigning to 'pte_t' from incompatible type 'int'
> 110 | ptent = huge_ptep_get(pvmw->vma->vm_mm, pvmw->address,
> | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 111 | pvmw->pte);
> | ~~~~~~~~~~
See this 6.12 thread[1] for this build failure (I didn't check but
assume it is the same, that missing commit only made it 7.3-rc1 but was
also backported to the 7.2 tree, which also explains 7.2 didn't build
fail)
---
This builds on master because this commit:
f5407e9b697c ("mm/rmap: use huge_ptep_get() in try_to_unmap_one()")
added a function declaration in linux/hugetlb.h !CONFIG_HUGETLB_PAGE
code:
```
diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h
index 817b8b4223fa..95b1b6ee1f96 100644
--- a/include/linux/hugetlb.h
+++ b/include/linux/hugetlb.h
@@ -1270,6 +1270,8 @@ static inline void hugetlb_count_sub(long l, struct mm_struct *mm)
{
}
+pte_t huge_ptep_get(struct mm_struct *mm, unsigned long addr, pte_t *ptep);
+
static inline pte_t huge_ptep_clear_flush(struct vm_area_struct *vma,
unsigned long addr, pte_t *ptep)
{
```
The rest of that commit isn't applicable, so we either need to roll that
change in 'mm/migrate: use huge_ptep_get() in remove_migration_pte()' or
add it separately (or drop that commit)
---
[1] https://lore.kernel.org/r/apq_s8mFJJPzoIdo@codewreck.org
--
Dominique
More information about the linux-um
mailing list