[willy-pagecache:headers 12/18] arch/sparc/include/asm/page_64.h:78:24: error: request for member 'pgd' in something not a structure or union

kernel test robot <[email protected]>
Newsgroups dev.linux.lists.oe-kbuild-all
Message-ID <[email protected]>
tree:   git://git.infradead.org/users/willy/pagecache headers
head:   33e73a1e8175a4735e962dec9465e64e85d0a63d
commit: 6343ad5713adc6443ae88978dd3f981341d8dba1 [12/18] drm: Remove pagemap from ttm_tt.h header
config: sparc64-randconfig-001-20260814 (https://download.01.org/0day-ci/archive/20260814/[email protected]/config)
compiler: sparc64-linux-gcc (GCC) 8.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260814/[email protected]/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/

All error/warnings (new ones prefixed by >>):

   In file included from arch/sparc/include/asm/pgtable_64.h:16,
                    from arch/sparc/include/asm/pgtable.h:5,
                    from include/linux/pgtable.h:6,
                    from include/drm/ttm/ttm_caching.h:28,
                    from include/drm/ttm/ttm_tt.h:31,
                    from drivers/gpu/drm/ttm/tests/ttm_kunit_helpers.c:8:
   include/asm-generic/pgtable-nop4d.h:9:18: error: unknown type name 'pgd_t'
    typedef struct { pgd_t pgd; } p4d_t;
                     ^~~~~
   include/asm-generic/pgtable-nop4d.h:21:28: error: unknown type name 'pgd_t'; did you mean 'p4d_t'?
    static inline int pgd_none(pgd_t pgd)  { return 0; }
                               ^~~~~
                               p4d_t
   include/asm-generic/pgtable-nop4d.h:22:27: error: unknown type name 'pgd_t'; did you mean 'p4d_t'?
    static inline int pgd_bad(pgd_t pgd)  { return 0; }
                              ^~~~~
                              p4d_t
   include/asm-generic/pgtable-nop4d.h:23:31: error: unknown type name 'pgd_t'; did you mean 'p4d_t'?
    static inline int pgd_present(pgd_t pgd) { return 1; }
                                  ^~~~~
                                  p4d_t
   include/asm-generic/pgtable-nop4d.h:24:30: error: unknown type name 'pgd_t'; did you mean 'p4d_t'?
    static inline void pgd_clear(pgd_t *pgd) { }
                                 ^~~~~
                                 p4d_t
   include/asm-generic/pgtable-nop4d.h:35:33: error: unknown type name 'pgd_t'; did you mean 'p4d_t'?
    static inline p4d_t *p4d_offset(pgd_t *pgd, unsigned long address)
                                    ^~~~~
                                    p4d_t
   In file included from arch/sparc/include/asm/page.h:6,
                    from arch/sparc/include/asm/pgtable_64.h:23,
                    from arch/sparc/include/asm/pgtable.h:5,
                    from include/linux/pgtable.h:6,
                    from include/drm/ttm/ttm_caching.h:28,
                    from include/drm/ttm/ttm_tt.h:31,
                    from drivers/gpu/drm/ttm/tests/ttm_kunit_helpers.c:8:
   include/linux/pgtable.h: In function 'pud_offset':
>> arch/sparc/include/asm/page_64.h:78:24: error: request for member 'pgd' in something not a structure or union
    #define pgd_val(x) ((x).pgd)
                           ^
   arch/sparc/include/asm/page_64.h:146:46: note: in definition of macro '__va'
    #define __va(x)   ((void *)((unsigned long) (x) + PAGE_OFFSET))
                                                 ^
   include/asm-generic/pgtable-nop4d.h:40:24: note: in expansion of macro 'pgd_val'
    #define p4d_val(x)    (pgd_val((x).pgd))
                           ^~~~~~~
   arch/sparc/include/asm/pgtable_64.h:859:18: note: in expansion of macro 'p4d_val'
     ((pud_t *) __va(p4d_val(p4d)))
                     ^~~~~~~
   include/linux/pgtable.h:135:9: note: in expansion of macro 'p4d_pgtable'
     return p4d_pgtable(*p4d) + pud_index(address);
            ^~~~~~~~~~~
   In file included from include/drm/ttm/ttm_caching.h:28,
                    from include/drm/ttm/ttm_tt.h:31,
                    from drivers/gpu/drm/ttm/tests/ttm_kunit_helpers.c:8:
   include/linux/pgtable.h: In function 'pmd_off':
   include/linux/pgtable.h:167:31: error: implicit declaration of function 'p4d_offset'; did you mean 'pud_offset'? [-Werror=implicit-function-declaration]
     return pmd_offset(pud_offset(p4d_offset(pgd_offset(mm, va), va), va), va);
                                  ^~~~~~~~~~
                                  pud_offset
>> include/linux/pgtable.h:167:31: warning: passing argument 1 of 'pud_offset' makes pointer from integer without a cast [-Wint-conversion]
     return pmd_offset(pud_offset(p4d_offset(pgd_offset(mm, va), va), va), va);
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/pgtable.h:133:40: note: expected 'p4d_t *' {aka 'struct <anonymous> *'} but argument is of type 'int'
    static inline pud_t *pud_offset(p4d_t *p4d, unsigned long address)
                                    ~~~~~~~^~~
   include/linux/pgtable.h: In function 'pmd_off_k':
   include/linux/pgtable.h:172:31: warning: passing argument 1 of 'pud_offset' makes pointer from integer without a cast [-Wint-conversion]
     return pmd_offset(pud_offset(p4d_offset(pgd_offset_k(va), va), va), va);
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/pgtable.h:133:40: note: expected 'p4d_t *' {aka 'struct <anonymous> *'} but argument is of type 'int'
    static inline pud_t *pud_offset(p4d_t *p4d, unsigned long address)
                                    ~~~~~~~^~~
   In file included from arch/sparc/include/asm/page.h:6,
                    from arch/sparc/include/asm/pgtable_64.h:23,
                    from arch/sparc/include/asm/pgtable.h:5,
                    from include/linux/pgtable.h:6,
                    from include/drm/ttm/ttm_caching.h:28,
                    from include/drm/ttm/ttm_tt.h:31,
                    from drivers/gpu/drm/ttm/tests/ttm_kunit_helpers.c:8:
   include/linux/pgtable.h: In function 'p4d_same':
>> arch/sparc/include/asm/page_64.h:78:24: error: request for member 'pgd' in something not a structure or union
    #define pgd_val(x) ((x).pgd)
                           ^
   include/asm-generic/pgtable-nop4d.h:40:24: note: in expansion of macro 'pgd_val'
    #define p4d_val(x)    (pgd_val((x).pgd))
                           ^~~~~~~
   include/linux/pgtable.h:1384:9: note: in expansion of macro 'p4d_val'
     return p4d_val(p4d_a) == p4d_val(p4d_b);
            ^~~~~~~
>> arch/sparc/include/asm/page_64.h:78:24: error: request for member 'pgd' in something not a structure or union
    #define pgd_val(x) ((x).pgd)
                           ^
   include/asm-generic/pgtable-nop4d.h:40:24: note: in expansion of macro 'pgd_val'
    #define p4d_val(x)    (pgd_val((x).pgd))
                           ^~~~~~~
   include/linux/pgtable.h:1384:27: note: in expansion of macro 'p4d_val'
     return p4d_val(p4d_a) == p4d_val(p4d_b);
                              ^~~~~~~
   In file included from include/drm/ttm/ttm_caching.h:28,
                    from include/drm/ttm/ttm_tt.h:31,
                    from drivers/gpu/drm/ttm/tests/ttm_kunit_helpers.c:8:
   include/linux/pgtable.h:1382:34: warning: parameter 'p4d_a' set but not used [-Wunused-but-set-parameter]
    static inline int p4d_same(p4d_t p4d_a, p4d_t p4d_b)
                               ~~~~~~^~~~~
   include/linux/pgtable.h:1382:47: warning: parameter 'p4d_b' set but not used [-Wunused-but-set-parameter]
    static inline int p4d_same(p4d_t p4d_a, p4d_t p4d_b)
                                            ~~~~~~^~~~~
   include/linux/pgtable.h: In function 'pgd_none_or_clear_bad':
   include/linux/pgtable.h:1544:6: error: implicit declaration of function 'pgd_none'; did you mean 'p4d_none'? [-Werror=implicit-function-declaration]
     if (pgd_none(*pgd))
         ^~~~~~~~
         p4d_none
   In file included from include/linux/export.h:5,
                    from drivers/gpu/drm/ttm/tests/ttm_kunit_helpers.c:6:
   include/linux/pgtable.h:1546:15: error: implicit declaration of function 'pgd_bad'; did you mean 'pmd_bad'? [-Werror=implicit-function-declaration]
     if (unlikely(pgd_bad(*pgd))) {
                  ^~~~~~~
   include/linux/compiler.h:77:42: note: in definition of macro 'unlikely'
    # define unlikely(x) __builtin_expect(!!(x), 0)
                                             ^
   In file included from arch/sparc/include/asm/page.h:6,
                    from arch/sparc/include/asm/pgtable_64.h:23,
                    from arch/sparc/include/asm/pgtable.h:5,
                    from include/linux/pgtable.h:6,
                    from include/drm/ttm/ttm_caching.h:28,
                    from include/drm/ttm/ttm_tt.h:31,
                    from drivers/gpu/drm/ttm/tests/ttm_kunit_helpers.c:8:
   include/linux/pgtable.h: In function 'p4d_none_or_clear_bad':
>> arch/sparc/include/asm/page_64.h:78:24: error: request for member 'pgd' in something not a structure or union
    #define pgd_val(x) ((x).pgd)
                           ^
   include/asm-generic/pgtable-nop4d.h:40:24: note: in expansion of macro 'pgd_val'
    #define p4d_val(x)    (pgd_val((x).pgd))
                           ^~~~~~~
   arch/sparc/include/asm/pgtable_64.h:809:27: note: in expansion of macro 'p4d_val'
    #define p4d_none(p4d)   (!p4d_val(p4d))
                              ^~~~~~~
   include/linux/pgtable.h:1555:6: note: in expansion of macro 'p4d_none'
     if (p4d_none(*p4d))
         ^~~~~~~~
   In file included from include/linux/export.h:5,
                    from drivers/gpu/drm/ttm/tests/ttm_kunit_helpers.c:6:
>> arch/sparc/include/asm/page_64.h:78:24: error: request for member 'pgd' in something not a structure or union
    #define pgd_val(x) ((x).pgd)
                           ^
   include/linux/compiler.h:77:42: note: in definition of macro 'unlikely'
    # define unlikely(x) __builtin_expect(!!(x), 0)
                                             ^
   include/asm-generic/pgtable-nop4d.h:40:24: note: in expansion of macro 'pgd_val'
    #define p4d_val(x)    (pgd_val((x).pgd))
                           ^~~~~~~
   arch/sparc/include/asm/pgtable_64.h:811:25: note: in expansion of macro 'p4d_val'
    #define p4d_bad(p4d)   (p4d_val(p4d) & ~PAGE_MASK)
                            ^~~~~~~
   include/linux/pgtable.h:1557:15: note: in expansion of macro 'p4d_bad'
     if (unlikely(p4d_bad(*p4d))) {
                  ^~~~~~~
   In file included from include/linux/scatterlist.h:8,
                    from include/linux/dma-buf.h:19,
                    from include/drm/drm_gem.h:38,
                    from include/drm/ttm/ttm_bo.h:34,
                    from drivers/gpu/drm/ttm/tests/ttm_kunit_helpers.h:10,
                    from drivers/gpu/drm/ttm/tests/ttm_kunit_helpers.c:10:
   include/linux/mm.h: In function 'p4d_alloc':
>> include/linux/mm.h:3697:8: warning: pointer/integer type mismatch in conditional expression
      NULL : p4d_offset(pgd, address);
           ^
   In file included from include/linux/export.h:5,
                    from drivers/gpu/drm/ttm/tests/ttm_kunit_helpers.c:6:
   include/linux/mm.h: In function 'pud_alloc':
>> arch/sparc/include/asm/page_64.h:78:24: error: request for member 'pgd' in something not a structure or union
    #define pgd_val(x) ((x).pgd)
                           ^
   include/linux/compiler.h:77:42: note: in definition of macro 'unlikely'
    # define unlikely(x) __builtin_expect(!!(x), 0)
                                             ^
   include/asm-generic/pgtable-nop4d.h:40:24: note: in expansion of macro 'pgd_val'
    #define p4d_val(x)    (pgd_val((x).pgd))
                           ^~~~~~~
   arch/sparc/include/asm/pgtable_64.h:809:27: note: in expansion of macro 'p4d_val'
    #define p4d_none(p4d)   (!p4d_val(p4d))
                              ^~~~~~~
   include/linux/mm.h:3703:19: note: in expansion of macro 'p4d_none'
     return (unlikely(p4d_none(*p4d)) && __pud_alloc(mm, p4d, address)) ?
                      ^~~~~~~~
   cc1: some warnings being treated as errors


vim +/pgd +78 arch/sparc/include/asm/page_64.h

f5e706ad886b6a include/asm-sparc/page_64.h      Sam Ravnborg    2008-07-17  73  
f5e706ad886b6a include/asm-sparc/page_64.h      Sam Ravnborg    2008-07-17  74  #define pte_val(x)	((x).pte)
f5e706ad886b6a include/asm-sparc/page_64.h      Sam Ravnborg    2008-07-17  75  #define iopte_val(x)	((x).iopte)
f5e706ad886b6a include/asm-sparc/page_64.h      Sam Ravnborg    2008-07-17  76  #define pmd_val(x)      ((x).pmd)
ac55c768143aa3 arch/sparc/include/asm/page_64.h David S. Miller 2014-09-26  77  #define pud_val(x)      ((x).pud)
f5e706ad886b6a include/asm-sparc/page_64.h      Sam Ravnborg    2008-07-17 @78  #define pgd_val(x)	((x).pgd)
f5e706ad886b6a include/asm-sparc/page_64.h      Sam Ravnborg    2008-07-17  79  #define pgprot_val(x)	((x).pgprot)
f5e706ad886b6a include/asm-sparc/page_64.h      Sam Ravnborg    2008-07-17  80  

:::::: The code at line 78 was first introduced by commit
:::::: f5e706ad886b6a5eb59637830110b09ccebf01c5 sparc: join the remaining header files

:::::: TO: Sam Ravnborg <[email protected]>
:::::: CC: David S. Miller <[email protected]>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.