All of lore.kernel.org
 help / color / mirror / Atom feed
* [alexshi:pmdunify 3/6] arch/sh/include/asm/pgtable-3level.h:38:29: error: 'pmd_t' has no member named 'entry'
@ 2025-12-27  6:53 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-12-27  6:53 UTC (permalink / raw)
  To: alexs; +Cc: oe-kbuild-all

Hi Alex,

FYI, the error/warning was bisected to this commit, please ignore it if it's irrelevant.

tree:   https://github.com/alexshi/linux.git pmdunify
head:   694b5dc7bcd7ba28db0bc95b24a78861bdffefc7
commit: 38ff6617fbf7d3b0ad7fda7fb1c5b0cdca9f7123 [3/6] arch/x86: unify pmd_t/pud_t/p4d_t member name to entry
config: sh-defconfig (https://download.01.org/0day-ci/archive/20251227/202512272012.bgl862Eo-lkp@intel.com/config)
compiler: sh4-linux-gcc (GCC) 15.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251227/202512272012.bgl862Eo-lkp@intel.com/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 <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202512272012.bgl862Eo-lkp@intel.com/

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

   In file included from arch/sh/include/asm/pgtable.h:13,
                    from include/linux/pgtable.h:6,
                    from include/linux/mm.h:31,
                    from arch/sh/kernel/asm-offsets.c:15:
   arch/sh/include/asm/pgtable_32.h: In function 'pmd_page_vaddr':
>> arch/sh/include/asm/pgtable-3level.h:38:29: error: 'pmd_t' has no member named 'entry'
      38 | #define pmd_val(x)      ((x).entry)
         |                             ^
   arch/sh/include/asm/pgtable_32.h:397:31: note: in expansion of macro 'pmd_val'
     397 |         return (unsigned long)pmd_val(pmd);
         |                               ^~~~~~~
   In file included from arch/sh/include/asm/pgtable.h:80:
>> arch/sh/include/asm/pgtable_32.h:395:50: warning: parameter 'pmd' set but not used [-Wunused-but-set-parameter]
     395 | static inline unsigned long pmd_page_vaddr(pmd_t pmd)
         |                                            ~~~~~~^~~
   include/linux/pgtable.h: In function 'virt_to_kpte':
>> arch/sh/include/asm/pgtable-3level.h:38:29: error: 'pmd_t' has no member named 'entry'
      38 | #define pmd_val(x)      ((x).entry)
         |                             ^
   arch/sh/include/asm/pgtable_32.h:327:27: note: in expansion of macro 'pmd_val'
     327 | #define pmd_none(x)     (!pmd_val(x))
         |                           ^~~~~~~
   include/linux/pgtable.h:198:16: note: in expansion of macro 'pmd_none'
     198 |         return pmd_none(*pmd) ? NULL : pte_offset_kernel(pmd, vaddr);
         |                ^~~~~~~~
   include/linux/pgtable.h: In function 'pmd_same':
>> arch/sh/include/asm/pgtable-3level.h:38:29: error: 'pmd_t' has no member named 'entry'
      38 | #define pmd_val(x)      ((x).entry)
         |                             ^
   include/linux/pgtable.h:1119:16: note: in expansion of macro 'pmd_val'
    1119 |         return pmd_val(pmd_a) == pmd_val(pmd_b);
         |                ^~~~~~~
>> arch/sh/include/asm/pgtable-3level.h:38:29: error: 'pmd_t' has no member named 'entry'
      38 | #define pmd_val(x)      ((x).entry)
         |                             ^
   include/linux/pgtable.h:1119:34: note: in expansion of macro 'pmd_val'
    1119 |         return pmd_val(pmd_a) == pmd_val(pmd_b);
         |                                  ^~~~~~~
>> include/linux/pgtable.h:1117:34: warning: parameter 'pmd_a' set but not used [-Wunused-but-set-parameter]
    1117 | static inline int pmd_same(pmd_t pmd_a, pmd_t pmd_b)
         |                            ~~~~~~^~~~~
>> include/linux/pgtable.h:1117:47: warning: parameter 'pmd_b' set but not used [-Wunused-but-set-parameter]
    1117 | static inline int pmd_same(pmd_t pmd_a, pmd_t pmd_b)
         |                                         ~~~~~~^~~~~
   include/linux/pgtable.h: In function 'pmd_none_or_clear_bad':
>> arch/sh/include/asm/pgtable-3level.h:38:29: error: 'pmd_t' has no member named 'entry'
      38 | #define pmd_val(x)      ((x).entry)
         |                             ^
   arch/sh/include/asm/pgtable_32.h:327:27: note: in expansion of macro 'pmd_val'
     327 | #define pmd_none(x)     (!pmd_val(x))
         |                           ^~~~~~~
   include/linux/pgtable.h:1327:13: note: in expansion of macro 'pmd_none'
    1327 |         if (pmd_none(*pmd))
         |             ^~~~~~~~
   In file included from include/linux/export.h:5,
                    from include/linux/linkage.h:7,
                    from arch/sh/include/asm/bug.h:5,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/mm.h:6:
>> arch/sh/include/asm/pgtable-3level.h:38:29: error: 'pmd_t' has no member named 'entry'
      38 | #define pmd_val(x)      ((x).entry)
         |                             ^
   include/linux/compiler.h:77:45: note: in definition of macro 'unlikely'
      77 | # define unlikely(x)    __builtin_expect(!!(x), 0)
         |                                             ^
   arch/sh/include/asm/pgtable_32.h:330:26: note: in expansion of macro 'pmd_val'
     330 | #define pmd_bad(x)      (pmd_val(x) & ~PAGE_MASK)
         |                          ^~~~~~~
   include/linux/pgtable.h:1329:22: note: in expansion of macro 'pmd_bad'
    1329 |         if (unlikely(pmd_bad(*pmd))) {
         |                      ^~~~~~~
   In file included from include/linux/mmzone.h:22,
                    from include/linux/gfp.h:7,
                    from include/linux/mm.h:7:
   include/linux/mm.h: In function 'pte_lockptr':
>> arch/sh/include/asm/pgtable-3level.h:38:29: error: 'pmd_t' has no member named 'entry'
      38 | #define pmd_val(x)      ((x).entry)
         |                             ^
   include/linux/mm_types.h:633:52: note: in definition of macro 'page_ptdesc'
     633 | #define page_ptdesc(p)                  (_Generic((p),                  \
         |                                                    ^
   include/asm-generic/memory_model.h:74:21: note: in expansion of macro '__pfn_to_page'
      74 | #define pfn_to_page __pfn_to_page
         |                     ^~~~~~~~~~~~~
   arch/sh/include/asm/page.h:130:25: note: in expansion of macro '___pa'
     130 | #define __pa(x)         ___pa((unsigned long)x)
         |                         ^~~~~
   arch/sh/include/asm/page.h:157:45: note: in expansion of macro '__pa'
     157 | #define virt_to_page(kaddr)     pfn_to_page(__pa(kaddr) >> PAGE_SHIFT)
         |                                             ^~~~
   arch/sh/include/asm/pgtable_32.h:401:34: note: in expansion of macro 'virt_to_page'
     401 | #define pmd_page(pmd)           (virt_to_page(pmd_val(pmd)))
         |                                  ^~~~~~~~~~~~
   arch/sh/include/asm/pgtable_32.h:401:47: note: in expansion of macro 'pmd_val'
     401 | #define pmd_page(pmd)           (virt_to_page(pmd_val(pmd)))
         |                                               ^~~~~~~
   include/linux/mm.h:3260:39: note: in expansion of macro 'pmd_page'
    3260 |         return ptlock_ptr(page_ptdesc(pmd_page(*pmd)));
         |                                       ^~~~~~~~
>> arch/sh/include/asm/pgtable-3level.h:38:29: error: 'pmd_t' has no member named 'entry'
      38 | #define pmd_val(x)      ((x).entry)
         |                             ^
   include/linux/mm_types.h:634:65: note: in definition of macro 'page_ptdesc'
     634 |         const struct page *:            (const struct ptdesc *)(p),     \
         |                                                                 ^
   include/asm-generic/memory_model.h:74:21: note: in expansion of macro '__pfn_to_page'
      74 | #define pfn_to_page __pfn_to_page
         |                     ^~~~~~~~~~~~~
   arch/sh/include/asm/page.h:130:25: note: in expansion of macro '___pa'
     130 | #define __pa(x)         ___pa((unsigned long)x)
         |                         ^~~~~
   arch/sh/include/asm/page.h:157:45: note: in expansion of macro '__pa'
     157 | #define virt_to_page(kaddr)     pfn_to_page(__pa(kaddr) >> PAGE_SHIFT)
         |                                             ^~~~
   arch/sh/include/asm/pgtable_32.h:401:34: note: in expansion of macro 'virt_to_page'
     401 | #define pmd_page(pmd)           (virt_to_page(pmd_val(pmd)))
         |                                  ^~~~~~~~~~~~
   arch/sh/include/asm/pgtable_32.h:401:47: note: in expansion of macro 'pmd_val'
     401 | #define pmd_page(pmd)           (virt_to_page(pmd_val(pmd)))
         |                                               ^~~~~~~
   include/linux/mm.h:3260:39: note: in expansion of macro 'pmd_page'
    3260 |         return ptlock_ptr(page_ptdesc(pmd_page(*pmd)));
         |                                       ^~~~~~~~
>> arch/sh/include/asm/pgtable-3level.h:38:29: error: 'pmd_t' has no member named 'entry'
      38 | #define pmd_val(x)      ((x).entry)
         |                             ^
   include/linux/mm_types.h:635:59: note: in definition of macro 'page_ptdesc'
     635 |         struct page *:                  (struct ptdesc *)(p)))
         |                                                           ^
   include/asm-generic/memory_model.h:74:21: note: in expansion of macro '__pfn_to_page'
      74 | #define pfn_to_page __pfn_to_page
         |                     ^~~~~~~~~~~~~
   arch/sh/include/asm/page.h:130:25: note: in expansion of macro '___pa'
     130 | #define __pa(x)         ___pa((unsigned long)x)
         |                         ^~~~~
   arch/sh/include/asm/page.h:157:45: note: in expansion of macro '__pa'
     157 | #define virt_to_page(kaddr)     pfn_to_page(__pa(kaddr) >> PAGE_SHIFT)
         |                                             ^~~~
   arch/sh/include/asm/pgtable_32.h:401:34: note: in expansion of macro 'virt_to_page'
     401 | #define pmd_page(pmd)           (virt_to_page(pmd_val(pmd)))
         |                                  ^~~~~~~~~~~~
   arch/sh/include/asm/pgtable_32.h:401:47: note: in expansion of macro 'pmd_val'
     401 | #define pmd_page(pmd)           (virt_to_page(pmd_val(pmd)))
         |                                               ^~~~~~~
   include/linux/mm.h:3260:39: note: in expansion of macro 'pmd_page'
    3260 |         return ptlock_ptr(page_ptdesc(pmd_page(*pmd)));
         |                                       ^~~~~~~~
   make[3]: *** [scripts/Makefile.build:182: arch/sh/kernel/asm-offsets.s] Error 1
   make[3]: Target 'prepare' not remade because of errors.
   make[2]: *** [Makefile:1314: prepare0] Error 2
   make[2]: Target 'prepare' not remade because of errors.
   make[1]: *** [Makefile:248: __sub-make] Error 2
   make[1]: Target 'prepare' not remade because of errors.
   make: *** [Makefile:248: __sub-make] Error 2
   make: Target 'prepare' not remade because of errors.


vim +38 arch/sh/include/asm/pgtable-3level.h

    27	
    28	#define pmd_ERROR(e) \
    29		printk("%s:%d: bad pmd %016llx.\n", __FILE__, __LINE__, pmd_val(e))
    30	
    31	typedef union {
    32		struct {
    33			unsigned long pmd_low;
    34			unsigned long pmd_high;
    35		};
    36		unsigned long long pmd;
    37	} pmd_t;
  > 38	#define pmd_val(x)	((x).entry)
    39	#define __pmd(x)	((pmd_t) { .entry = (x) } )
    40	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2025-12-27  6:54 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-27  6:53 [alexshi:pmdunify 3/6] arch/sh/include/asm/pgtable-3level.h:38:29: error: 'pmd_t' has no member named 'entry' kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.