[PATCH v2 2/5] powerpc/mm: drop powerpc vmemmap_can_optimize()
kernel test robot
lkp at intel.com
Thu Nov 5 04:13:50 PST 2026
Hi Muchun,
kernel test robot noticed the following build errors:
[auto build test ERROR on dba8aba0a9a00ff781c03d82ae534fc6f8c2e263]
url: https://github.com/intel-lab-lkp/linux/commits/Muchun-Song/powerpc-mm-make-vmemmap_populate_compound_pages-static/20261105-141213
base: dba8aba0a9a00ff781c03d82ae534fc6f8c2e263
patch link: https://lore.kernel.org/r/20261105061217.13302-3-songmuchun%40bytedance.com
patch subject: [PATCH v2 2/5] powerpc/mm: drop powerpc vmemmap_can_optimize()
config: loongarch-allmodconfig (https://download.01.org/0day-ci/archive/20261105/202611052055.TcIXFI7V-lkp@intel.com/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20261105/202611052055.TcIXFI7V-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 at intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202611052055.TcIXFI7V-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from arch/loongarch/kernel/asm-offsets.c:11:
In file included from include/linux/mm.h:31:
In file included from include/linux/pgtable.h:6:
In file included from arch/loongarch/include/asm/pgtable.h:75:
include/linux/vmemmap-optimization.h:62:9: error: call to undeclared function 'vmemmap_optimizable_order'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
62 | return vmemmap_optimizable_order(section_compound_order(section));
| ^
>> include/linux/vmemmap-optimization.h:68:22: error: use of undeclared identifier 'vmemmap'; did you mean 'mem_map'?
68 | unsigned long pfn = page_to_pfn((struct page *)start);
| ^
include/asm-generic/memory_model.h:73:21: note: expanded from macro 'page_to_pfn'
73 | #define page_to_pfn __page_to_pfn
| ^
include/asm-generic/memory_model.h:47:54: note: expanded from macro '__page_to_pfn'
47 | #define __page_to_pfn(page) (unsigned long)((page) - vmemmap)
| ^
include/linux/mmzone.h:1452:21: note: 'mem_map' declared here
1452 | extern struct page *mem_map;
| ^
In file included from arch/loongarch/kernel/asm-offsets.c:11:
In file included from include/linux/mm.h:31:
In file included from include/linux/pgtable.h:6:
In file included from arch/loongarch/include/asm/pgtable.h:75:
include/linux/vmemmap-optimization.h:138:20: error: conflicting types for 'vmemmap_optimizable_order'
138 | static inline bool vmemmap_optimizable_order(unsigned int order)
| ^
include/linux/vmemmap-optimization.h:62:9: note: previous implicit declaration is here
62 | return vmemmap_optimizable_order(section_compound_order(section));
| ^
In file included from arch/loongarch/kernel/asm-offsets.c:11:
In file included from include/linux/mm.h:36:
In file included from include/linux/rcuwait.h:6:
In file included from include/linux/sched/signal.h:7:
include/linux/signal.h:98:11: warning: array index 3 is past the end of the array (that has type 'unsigned long[1]') [-Warray-bounds]
98 | return (set->sig[3] | set->sig[2] |
| ^ ~
include/uapi/asm-generic/signal.h:62:2: note: array 'sig' declared here
62 | unsigned long sig[_NSIG_WORDS];
| ^
In file included from arch/loongarch/kernel/asm-offsets.c:11:
In file included from include/linux/mm.h:36:
In file included from include/linux/rcuwait.h:6:
In file included from include/linux/sched/signal.h:7:
include/linux/signal.h:98:25: warning: array index 2 is past the end of the array (that has type 'unsigned long[1]') [-Warray-bounds]
98 | return (set->sig[3] | set->sig[2] |
| ^ ~
include/uapi/asm-generic/signal.h:62:2: note: array 'sig' declared here
62 | unsigned long sig[_NSIG_WORDS];
| ^
In file included from arch/loongarch/kernel/asm-offsets.c:11:
In file included from include/linux/mm.h:36:
In file included from include/linux/rcuwait.h:6:
In file included from include/linux/sched/signal.h:7:
include/linux/signal.h:99:4: warning: array index 1 is past the end of the array (that has type 'unsigned long[1]') [-Warray-bounds]
99 | set->sig[1] | set->sig[0]) == 0;
| ^ ~
include/uapi/asm-generic/signal.h:62:2: note: array 'sig' declared here
62 | unsigned long sig[_NSIG_WORDS];
| ^
In file included from arch/loongarch/kernel/asm-offsets.c:11:
In file included from include/linux/mm.h:36:
In file included from include/linux/rcuwait.h:6:
In file included from include/linux/sched/signal.h:7:
include/linux/signal.h:101:11: warning: array index 1 is past the end of the array (that has type 'unsigned long[1]') [-Warray-bounds]
101 | return (set->sig[1] | set->sig[0]) == 0;
| ^ ~
include/uapi/asm-generic/signal.h:62:2: note: array 'sig' declared here
62 | unsigned long sig[_NSIG_WORDS];
| ^
In file included from arch/loongarch/kernel/asm-offsets.c:11:
In file included from include/linux/mm.h:36:
In file included from include/linux/rcuwait.h:6:
In file included from include/linux/sched/signal.h:7:
include/linux/signal.h:114:11: warning: array index 3 is past the end of the array (that has type 'const unsigned long[1]') [-Warray-bounds]
114 | return (set1->sig[3] == set2->sig[3]) &&
| ^ ~
include/uapi/asm-generic/signal.h:62:2: note: array 'sig' declared here
62 | unsigned long sig[_NSIG_WORDS];
| ^
In file included from arch/loongarch/kernel/asm-offsets.c:11:
In file included from include/linux/mm.h:36:
In file included from include/linux/rcuwait.h:6:
In file included from include/linux/sched/signal.h:7:
include/linux/signal.h:114:27: warning: array index 3 is past the end of the array (that has type 'const unsigned long[1]') [-Warray-bounds]
114 | return (set1->sig[3] == set2->sig[3]) &&
| ^ ~
include/uapi/asm-generic/signal.h:62:2: note: array 'sig' declared here
62 | unsigned long sig[_NSIG_WORDS];
| ^
In file included from arch/loongarch/kernel/asm-offsets.c:11:
In file included from include/linux/mm.h:36:
In file included from include/linux/rcuwait.h:6:
In file included from include/linux/sched/signal.h:7:
include/linux/signal.h:115:5: warning: array index 2 is past the end of the array (that has type 'const unsigned long[1]') [-Warray-bounds]
115 | (set1->sig[2] == set2->sig[2]) &&
| ^ ~
include/uapi/asm-generic/signal.h:62:2: note: array 'sig' declared here
62 | unsigned long sig[_NSIG_WORDS];
| ^
In file included from arch/loongarch/kernel/asm-offsets.c:11:
In file included from include/linux/mm.h:36:
In file included from include/linux/rcuwait.h:6:
In file included from include/linux/sched/signal.h:7:
include/linux/signal.h:115:21: warning: array index 2 is past the end of the array (that has type 'const unsigned long[1]') [-Warray-bounds]
115 | (set1->sig[2] == set2->sig[2]) &&
| ^ ~
include/uapi/asm-generic/signal.h:62:2: note: array 'sig' declared here
62 | unsigned long sig[_NSIG_WORDS];
vim +68 include/linux/vmemmap-optimization.h
64
65 static inline void section_vmemmap_optimization_disable(unsigned long start,
66 unsigned long end)
67 {
> 68 unsigned long pfn = page_to_pfn((struct page *)start);
69 unsigned long nr_pages = (end - start) / sizeof(struct page);
70 struct mem_section *section = __pfn_to_section(pfn);
71
72 if (nr_pages < PAGES_PER_SECTION) {
73 VM_WARN_ON_ONCE(section_vmemmap_optimizable(section));
74 return;
75 }
76
77 VM_WARN_ON_ONCE(!IS_ALIGNED(pfn | nr_pages, PAGES_PER_SECTION));
78 section_set_compound_order(section, 0);
79 }
80
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
More information about the linux-riscv
mailing list