On 13.12.19 23:08, kbuild test robot wrote: > tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.19.y > head: 312017a460d5ea31d646e7148e400e13db799ddc > commit: f712e3066f75996f49b60145f0329f9e078eeabd [8055/9999] mm/page_owner: don't access uninitialized memmaps when reading /proc/pagetypeinfo > config: ia64-randconfig-a001-20191213 (attached as .config) > compiler: ia64-linux-gcc (GCC) 7.5.0 > reproduce: > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > chmod +x ~/bin/make.cross > git checkout f712e3066f75996f49b60145f0329f9e078eeabd > # save the attached .config to linux build tree > GCC_VERSION=7.5.0 make.cross ARCH=ia64 > > If you fix the issue, kindly add following tag > Reported-by: kbuild test robot > > All warnings (new ones prefixed by >>): > > In file included from arch/ia64/include/asm/ptrace.h:46:0, > from arch/ia64/include/asm/processor.h:20, > from arch/ia64/include/asm/thread_info.h:12, > from include/linux/thread_info.h:38, > from include/asm-generic/preempt.h:5, > from ./arch/ia64/include/generated/asm/preempt.h:1, > from include/linux/preempt.h:81, > from include/linux/spinlock.h:51, > from include/linux/wait.h:9, > from include/linux/wait_bit.h:8, > from include/linux/fs.h:6, > from include/linux/debugfs.h:15, > from mm/page_owner.c:2: > mm/internal.h: In function 'mem_map_next': > arch/ia64/include/asm/page.h:118:36: error: 'max_mapnr' undeclared (first use in this function); did you mean 'dax_mapping'? > # define pfn_valid(pfn) (((pfn) < max_mapnr) && ia64_pfn_valid(pfn)) > ^ > mm/internal.h:385:8: note: in expansion of macro 'pfn_valid' > if (!pfn_valid(pfn)) > ^~~~~~~~~ > arch/ia64/include/asm/page.h:118:36: note: each undeclared identifier is reported only once for each function it appears in > # define pfn_valid(pfn) (((pfn) < max_mapnr) && ia64_pfn_valid(pfn)) > ^ > mm/internal.h:385:8: note: in expansion of macro 'pfn_valid' > if (!pfn_valid(pfn)) > ^~~~~~~~~ > mm/page_owner.c: In function 'pagetypeinfo_showmixedcount_print': > arch/ia64/include/asm/page.h:118:36: error: 'max_mapnr' undeclared (first use in this function); did you mean 'dax_mapping'? > # define pfn_valid(pfn) (((pfn) < max_mapnr) && ia64_pfn_valid(pfn)) > ^ > include/linux/memory_hotplug.h:225:6: note: in expansion of macro 'pfn_valid' > if (pfn_valid(pfn)) \ > ^~~~~~~~~ >>> mm/page_owner.c:276:10: note: in expansion of macro 'pfn_to_online_page' > page = pfn_to_online_page(pfn); > ^~~~~~~~~~~~~~~~~~ > mm/page_owner.c: In function 'read_page_owner': > arch/ia64/include/asm/page.h:118:36: error: 'max_mapnr' undeclared (first use in this function); did you mean 'dax_mapping'? > # define pfn_valid(pfn) (((pfn) < max_mapnr) && ia64_pfn_valid(pfn)) > ^ > mm/page_owner.c:470:10: note: in expansion of macro 'pfn_valid' > while (!pfn_valid(pfn) && (pfn & (MAX_ORDER_NR_PAGES - 1)) != 0) > ^~~~~~~~~ > mm/page_owner.c: In function 'init_pages_in_zone': > arch/ia64/include/asm/page.h:118:36: error: 'max_mapnr' undeclared (first use in this function); did you mean 'dax_mapping'? > # define pfn_valid(pfn) (((pfn) < max_mapnr) && ia64_pfn_valid(pfn)) > ^ > mm/page_owner.c:544:8: note: in expansion of macro 'pfn_valid' > if (!pfn_valid(pfn)) { > ^~~~~~~~~ > My patch replaced pfn_valid() by pfn_to_online_page() - which indirectly expands to pfn_valid(pfn) again. This seems to be a pre-existing issue (I mean pfn_valid(pfn) seems to be completely broken here). -- Thanks, David / dhildenb