[willy-pagecache:headers 13/19] arch/sh/include/asm/page.h:78:29: 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:   032f02810150ef15c319b0ac8f82f7ca9760fe47
commit: 2d6459dd8379df55b30ba4c0d2103a7af55d5416 [13/19] drm: Remove pagemap from ttm_tt.h header
config: sh-randconfig-001-20260818 (https://download.01.org/0day-ci/archive/20260818/[email protected]/config)
compiler: sh4-linux-gcc (GCC) 16.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260818/[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 errors (new ones prefixed by >>):

   In file included from include/asm-generic/pgtable-nopud.h:7,
                    from arch/sh/include/asm/pgtable-3level.h:5,
                    from arch/sh/include/asm/pgtable.h:13,
                    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'; did you mean 'pid_t'?
       9 | typedef struct { pgd_t pgd; } p4d_t;
         |                  ^~~~~
         |                  pid_t
   include/asm-generic/pgtable-nop4d.h:21:28: error: unknown type name 'pgd_t'; did you mean 'p4d_t'?
      21 | 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'?
      22 | 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'?
      23 | 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'?
      24 | 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'?
      35 | static inline p4d_t *p4d_offset(pgd_t *pgd, unsigned long address)
         |                                 ^~~~~
         |                                 p4d_t
   arch/sh/include/asm/pgtable-3level.h: In function 'pud_pgtable':
   include/asm-generic/pgtable-nop4d.h:40:50: error: implicit declaration of function 'pgd_val'; did you mean 'p4d_val'? [-Wimplicit-function-declaration]
      40 | #define p4d_val(x)                              (pgd_val((x).pgd))
         |                                                  ^~~~~~~
   include/asm-generic/pgtable-nopud.h:48:50: note: in expansion of macro 'p4d_val'
      48 | #define pud_val(x)                              (p4d_val((x).p4d))
         |                                                  ^~~~~~~
   arch/sh/include/asm/pgtable-3level.h:43:40: note: in expansion of macro 'pud_val'
      43 |         return (pmd_t *)(unsigned long)pud_val(pud);
         |                                        ^~~~~~~
   include/linux/pgtable.h: In function 'pmd_off':
   include/linux/pgtable.h:167:38: error: implicit declaration of function 'p4d_offset'; did you mean 'pmd_offset'? [-Wimplicit-function-declaration]
     167 |         return pmd_offset(pud_offset(p4d_offset(pgd_offset(mm, va), va), va), va);
         |                                      ^~~~~~~~~~
         |                                      pmd_offset
   include/linux/pgtable.h:167:38: error: passing argument 1 of 'pud_offset' makes pointer from integer without a cast [-Wint-conversion]
     167 |         return pmd_offset(pud_offset(p4d_offset(pgd_offset(mm, va), va), va), va);
         |                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                                      |
         |                                      int
   include/asm-generic/pgtable-nopud.h:42:40: note: expected 'p4d_t *' but argument is of type 'int'
      42 | 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:38: error: passing argument 1 of 'pud_offset' makes pointer from integer without a cast [-Wint-conversion]
     172 |         return pmd_offset(pud_offset(p4d_offset(pgd_offset_k(va), va), va), va);
         |                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                                      |
         |                                      int
   include/asm-generic/pgtable-nopud.h:42:40: note: expected 'p4d_t *' but argument is of type 'int'
      42 | static inline pud_t *pud_offset(p4d_t *p4d, unsigned long address)
         |                                 ~~~~~~~^~~
   In file included from arch/sh/include/asm/pgtable.h:17:
   include/linux/pgtable.h: In function 'pud_same':
>> arch/sh/include/asm/page.h:78:29: error: request for member 'pgd' in something not a structure or union
      78 | #define pgd_val(x)      ((x).pgd)
         |                             ^
   include/asm-generic/pgtable-nop4d.h:40:50: note: in expansion of macro 'pgd_val'
      40 | #define p4d_val(x)                              (pgd_val((x).pgd))
         |                                                  ^~~~~~~
   include/asm-generic/pgtable-nopud.h:48:50: note: in expansion of macro 'p4d_val'
      48 | #define pud_val(x)                              (p4d_val((x).p4d))
         |                                                  ^~~~~~~
   include/linux/pgtable.h:1395:16: note: in expansion of macro 'pud_val'
    1395 |         return pud_val(pud_a) == pud_val(pud_b);
         |                ^~~~~~~
>> arch/sh/include/asm/page.h:78:29: error: request for member 'pgd' in something not a structure or union
      78 | #define pgd_val(x)      ((x).pgd)
         |                             ^
   include/asm-generic/pgtable-nop4d.h:40:50: note: in expansion of macro 'pgd_val'
      40 | #define p4d_val(x)                              (pgd_val((x).pgd))
         |                                                  ^~~~~~~
   include/asm-generic/pgtable-nopud.h:48:50: note: in expansion of macro 'p4d_val'
      48 | #define pud_val(x)                              (p4d_val((x).p4d))
         |                                                  ^~~~~~~
   include/linux/pgtable.h:1395:34: note: in expansion of macro 'pud_val'
    1395 |         return pud_val(pud_a) == pud_val(pud_b);
         |                                  ^~~~~~~
   include/linux/pgtable.h:1393:34: warning: parameter 'pud_a' set but not used [-Wunused-but-set-parameter=]
    1393 | static inline int pud_same(pud_t pud_a, pud_t pud_b)
         |                            ~~~~~~^~~~~
   include/linux/pgtable.h:1393:47: warning: parameter 'pud_b' set but not used [-Wunused-but-set-parameter=]
    1393 | static inline int pud_same(pud_t pud_a, pud_t pud_b)
         |                                         ~~~~~~^~~~~
   include/linux/pgtable.h: In function 'p4d_same':
>> arch/sh/include/asm/page.h:78:29: error: request for member 'pgd' in something not a structure or union
      78 | #define pgd_val(x)      ((x).pgd)
         |                             ^
   include/asm-generic/pgtable-nop4d.h:40:50: note: in expansion of macro 'pgd_val'
      40 | #define p4d_val(x)                              (pgd_val((x).pgd))
         |                                                  ^~~~~~~
   include/linux/pgtable.h:1403:16: note: in expansion of macro 'p4d_val'
    1403 |         return p4d_val(p4d_a) == p4d_val(p4d_b);
         |                ^~~~~~~
>> arch/sh/include/asm/page.h:78:29: error: request for member 'pgd' in something not a structure or union
      78 | #define pgd_val(x)      ((x).pgd)
         |                             ^
   include/asm-generic/pgtable-nop4d.h:40:50: note: in expansion of macro 'pgd_val'
      40 | #define p4d_val(x)                              (pgd_val((x).pgd))
         |                                                  ^~~~~~~
   include/linux/pgtable.h:1403:34: note: in expansion of macro 'p4d_val'
    1403 |         return p4d_val(p4d_a) == p4d_val(p4d_b);
         |                                  ^~~~~~~
   include/linux/pgtable.h:1401:34: warning: parameter 'p4d_a' set but not used [-Wunused-but-set-parameter=]
    1401 | static inline int p4d_same(p4d_t p4d_a, p4d_t p4d_b)
         |                            ~~~~~~^~~~~
   include/linux/pgtable.h:1401:47: warning: parameter 'p4d_b' set but not used [-Wunused-but-set-parameter=]
    1401 | 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:1563:13: error: implicit declaration of function 'pgd_none'; did you mean 'p4d_none'? [-Wimplicit-function-declaration]
    1563 |         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:1565:22: error: implicit declaration of function 'pgd_bad'; did you mean 'p4d_bad'? [-Wimplicit-function-declaration]
    1565 |         if (unlikely(pgd_bad(*pgd))) {
         |                      ^~~~~~~
   include/linux/compiler.h:77:45: note: in definition of macro 'unlikely'
      77 | # define unlikely(x)    __builtin_expect(!!(x), 0)
         |                                             ^
   include/linux/pgtable.h: In function 'pud_none_or_clear_bad':
>> arch/sh/include/asm/page.h:78:29: error: request for member 'pgd' in something not a structure or union
      78 | #define pgd_val(x)      ((x).pgd)
         |                             ^
   include/asm-generic/pgtable-nop4d.h:40:50: note: in expansion of macro 'pgd_val'
      40 | #define p4d_val(x)                              (pgd_val((x).pgd))
         |                                                  ^~~~~~~
   include/asm-generic/pgtable-nopud.h:48:50: note: in expansion of macro 'p4d_val'
      48 | #define pud_val(x)                              (p4d_val((x).p4d))
         |                                                  ^~~~~~~
   arch/sh/include/asm/pgtable-3level.h:48:27: note: in expansion of macro 'pud_val'
      48 | #define pud_none(x)     (!pud_val(x))
         |                           ^~~~~~~
   include/linux/pgtable.h:1585:13: note: in expansion of macro 'pud_none'
    1585 |         if (pud_none(*pud))
         |             ^~~~~~~~
>> arch/sh/include/asm/page.h:78:29: error: request for member 'pgd' in something not a structure or union
      78 | #define pgd_val(x)      ((x).pgd)
         |                             ^
   include/linux/compiler.h:77:45: note: in definition of macro 'unlikely'
      77 | # define unlikely(x)    __builtin_expect(!!(x), 0)
         |                                             ^
   include/asm-generic/pgtable-nop4d.h:40:50: note: in expansion of macro 'pgd_val'
      40 | #define p4d_val(x)                              (pgd_val((x).pgd))
         |                                                  ^~~~~~~
   include/asm-generic/pgtable-nopud.h:48:50: note: in expansion of macro 'p4d_val'
      48 | #define pud_val(x)                              (p4d_val((x).p4d))
         |                                                  ^~~~~~~
   arch/sh/include/asm/pgtable-3level.h:51:26: note: in expansion of macro 'pud_val'
      51 | #define pud_bad(x)      (pud_val(x) & ~PAGE_MASK)
         |                          ^~~~~~~
   include/linux/pgtable.h:1587:22: note: in expansion of macro 'pud_bad'
    1587 |         if (unlikely(pud_bad(*pud))) {
         |                      ^~~~~~~
   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:3589:22: error: pointer/integer type mismatch in conditional expression [-Wint-conversion]
    3589 |                 NULL : p4d_offset(pgd, address);
         |                      ^
   include/linux/mm.h: In function 'pmd_alloc':
>> arch/sh/include/asm/page.h:78:29: error: request for member 'pgd' in something not a structure or union
      78 | #define pgd_val(x)      ((x).pgd)
         |                             ^
   include/linux/compiler.h:77:45: note: in definition of macro 'unlikely'
      77 | # define unlikely(x)    __builtin_expect(!!(x), 0)
         |                                             ^
   include/asm-generic/pgtable-nop4d.h:40:50: note: in expansion of macro 'pgd_val'
      40 | #define p4d_val(x)                              (pgd_val((x).pgd))
         |                                                  ^~~~~~~
   include/asm-generic/pgtable-nopud.h:48:50: note: in expansion of macro 'p4d_val'
      48 | #define pud_val(x)                              (p4d_val((x).p4d))
         |                                                  ^~~~~~~
   arch/sh/include/asm/pgtable-3level.h:48:27: note: in expansion of macro 'pud_val'
      48 | #define pud_none(x)     (!pud_val(x))
         |                           ^~~~~~~
   include/linux/mm.h:3601:26: note: in expansion of macro 'pud_none'
    3601 |         return (unlikely(pud_none(*pud)) && __pmd_alloc(mm, pud, address))?
         |                          ^~~~~~~~


vim +/pgd +78 arch/sh/include/asm/page.h

21440cf04a64cd include/asm-sh/page.h Paul Mundt     2006-11-20  77  
^1da177e4c3f41 include/asm-sh/page.h Linus Torvalds 2005-04-16 @78  #define pgd_val(x)	((x).pgd)
^1da177e4c3f41 include/asm-sh/page.h Linus Torvalds 2005-04-16  79  #define pgprot_val(x)	((x).pgprot)
^1da177e4c3f41 include/asm-sh/page.h Linus Torvalds 2005-04-16  80  

:::::: The code at line 78 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2

:::::: TO: Linus Torvalds <[email protected]>
:::::: CC: Linus Torvalds <[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.