Hi Christoph, On Wed, 26 Jun 2019 15:13:18 +0200 Christoph Hellwig wrote: > > As that function is in code only there to provide compile coverage > something like this should fix the problem: > > > diff --git a/arch/sparc/include/asm/pgtable_64.h b/arch/sparc/include/asm/pgtable_64.h > index 547ff96fb228..1599de730532 100644 > --- a/arch/sparc/include/asm/pgtable_64.h > +++ b/arch/sparc/include/asm/pgtable_64.h > @@ -861,10 +861,12 @@ static inline unsigned long pud_page_vaddr(pud_t pud) > #define pud_clear(pudp) (pud_val(*(pudp)) = 0UL) > #define pgd_page_vaddr(pgd) \ > ((unsigned long) __va(pgd_val(pgd))) > -#define pgd_page(pgd) pfn_to_page(pgd_pfn(pgd)) > #define pgd_present(pgd) (pgd_val(pgd) != 0U) > #define pgd_clear(pgdp) (pgd_val(*(pgdp)) = 0UL) > > +/* only used by the stubbed out hugetlb gup code, should never be called */ > +#define pgd_page(pgd) NULL > + > static inline unsigned long pud_large(pud_t pud) > { > pte_t pte = __pte(pud_val(pud)); Thanks. -- Cheers, Stephen Rothwell