public inbox for linux-mm@kvack.org
 help / color / mirror / Atom feed
* [akpm-mm:mm-stable 72/140] arch/sparc/mm/init_64.c:2582:16: error: implicit declaration of function 'vmemmap_pgd_populate'; did you mean 'vmemmap_populate'?
@ 2026-03-25  3:10 kernel test robot
  2026-03-25  3:27 ` Andrew Morton
  0 siblings, 1 reply; 5+ messages in thread
From: kernel test robot @ 2026-03-25  3:10 UTC (permalink / raw)
  To: Chengkaitao
  Cc: oe-kbuild-all, David Hildenbrand, Andrew Morton,
	Linux Memory Management List

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-stable
head:   e393ce79b3cf63c2810be882eb6e531a54f520f4
commit: e504282091c8e4dc4f945c89d9b44ac2e0bfe504 [72/140] mm: convert vmemmap_p?d_populate() to static functions
config: sparc-randconfig-001-20260325 (https://download.01.org/0day-ci/archive/20260325/202603251147.CtgepAeH-lkp@intel.com/config)
compiler: sparc64-linux-gcc (GCC) 8.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260325/202603251147.CtgepAeH-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/202603251147.CtgepAeH-lkp@intel.com/

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

   arch/sparc/mm/init_64.c: In function 'sun4v_linear_pte_xor_finalize':
   arch/sparc/mm/init_64.c:2202:16: warning: variable 'pagecv_flag' set but not used [-Wunused-but-set-variable]
     unsigned long pagecv_flag;
                   ^~~~~~~~~~~
   arch/sparc/mm/init_64.c: In function 'vmemmap_populate':
>> arch/sparc/mm/init_64.c:2582:16: error: implicit declaration of function 'vmemmap_pgd_populate'; did you mean 'vmemmap_populate'? [-Werror=implicit-function-declaration]
      pgd_t *pgd = vmemmap_pgd_populate(vstart, node);
                   ^~~~~~~~~~~~~~~~~~~~
                   vmemmap_populate
>> arch/sparc/mm/init_64.c:2582:16: warning: initialization of 'pgd_t *' {aka 'struct <anonymous> *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
>> arch/sparc/mm/init_64.c:2591:9: error: implicit declaration of function 'vmemmap_p4d_populate'; did you mean 'vmemmap_populate'? [-Werror=implicit-function-declaration]
      p4d = vmemmap_p4d_populate(pgd, vstart, node);
            ^~~~~~~~~~~~~~~~~~~~
            vmemmap_populate
>> arch/sparc/mm/init_64.c:2591:7: warning: assignment to 'p4d_t *' {aka 'struct <anonymous> *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
      p4d = vmemmap_p4d_populate(pgd, vstart, node);
          ^
>> arch/sparc/mm/init_64.c:2595:9: error: implicit declaration of function 'vmemmap_pud_populate'; did you mean 'vmemmap_populate'? [-Werror=implicit-function-declaration]
      pud = vmemmap_pud_populate(p4d, vstart, node);
            ^~~~~~~~~~~~~~~~~~~~
            vmemmap_populate
>> arch/sparc/mm/init_64.c:2595:7: warning: assignment to 'pud_t *' {aka 'struct <anonymous> *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
      pud = vmemmap_pud_populate(p4d, vstart, node);
          ^
   cc1: some warnings being treated as errors


vim +2582 arch/sparc/mm/init_64.c

c4bce90ea2069e arch/sparc64/mm/init.c  David S. Miller   2006-02-11  2563  
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2564  #ifdef CONFIG_SPARSEMEM_VMEMMAP
0aad818b2de455 arch/sparc/mm/init_64.c Johannes Weiner   2013-04-29  2565  int __meminit vmemmap_populate(unsigned long vstart, unsigned long vend,
7b73d978a5d0d2 arch/sparc/mm/init_64.c Christoph Hellwig 2017-12-29  2566  			       int node, struct vmem_altmap *altmap)
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2567  {
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2568  	unsigned long pte_base;
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2569  
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2570  	pte_base = (_PAGE_VALID | _PAGE_SZ4MB_4U |
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2571  		    _PAGE_CP_4U | _PAGE_CV_4U |
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2572  		    _PAGE_P_4U | _PAGE_W_4U);
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2573  	if (tlb_type == hypervisor)
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2574  		pte_base = (_PAGE_VALID | _PAGE_SZ4MB_4V |
494e5b6faeda1d arch/sparc/mm/init_64.c Khalid Aziz       2015-05-27  2575  			    page_cache4v_flag | _PAGE_P_4V | _PAGE_W_4V);
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2576  
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2577  	pte_base |= _PAGE_PMD_HUGE;
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2578  
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2579  	vstart = vstart & PMD_MASK;
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2580  	vend = ALIGN(vend, PMD_SIZE);
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2581  	for (; vstart < vend; vstart += PMD_SIZE) {
df8ee578894ebb arch/sparc/mm/init_64.c Pavel Tatashin    2017-11-15 @2582  		pgd_t *pgd = vmemmap_pgd_populate(vstart, node);
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2583  		unsigned long pte;
5637bc50483404 arch/sparc/mm/init_64.c Mike Rapoport     2019-11-24  2584  		p4d_t *p4d;
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2585  		pud_t *pud;
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2586  		pmd_t *pmd;
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2587  
df8ee578894ebb arch/sparc/mm/init_64.c Pavel Tatashin    2017-11-15  2588  		if (!pgd)
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2589  			return -ENOMEM;
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2590  
5637bc50483404 arch/sparc/mm/init_64.c Mike Rapoport     2019-11-24 @2591  		p4d = vmemmap_p4d_populate(pgd, vstart, node);
5637bc50483404 arch/sparc/mm/init_64.c Mike Rapoport     2019-11-24  2592  		if (!p4d)
5637bc50483404 arch/sparc/mm/init_64.c Mike Rapoport     2019-11-24  2593  			return -ENOMEM;
5637bc50483404 arch/sparc/mm/init_64.c Mike Rapoport     2019-11-24  2594  
5637bc50483404 arch/sparc/mm/init_64.c Mike Rapoport     2019-11-24 @2595  		pud = vmemmap_pud_populate(p4d, vstart, node);
df8ee578894ebb arch/sparc/mm/init_64.c Pavel Tatashin    2017-11-15  2596  		if (!pud)
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2597  			return -ENOMEM;
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2598  
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2599  		pmd = pmd_offset(pud, vstart);
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2600  		pte = pmd_val(*pmd);
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2601  		if (!(pte & _PAGE_VALID)) {
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2602  			void *block = vmemmap_alloc_block(PMD_SIZE, node);
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2603  
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2604  			if (!block)
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2605  				return -ENOMEM;
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2606  
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2607  			pmd_val(*pmd) = pte_base | __pa(block);
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2608  		}
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2609  	}
2856cc2e4d0852 arch/sparc/mm/init_64.c David S. Miller   2012-08-15  2610  
c06240c7f5c39c arch/sparc/mm/init_64.c David S. Miller   2014-09-24  2611  	return 0;
2856cc2e4d0852 arch/sparc/mm/init_64.c David S. Miller   2012-08-15  2612  }
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2613  #endif /* CONFIG_SPARSEMEM_VMEMMAP */
46644c2477c589 arch/sparc64/mm/init.c  David Miller      2007-10-16  2614  

:::::: The code at line 2582 was first introduced by commit
:::::: df8ee578894ebb591c2995cce422e6189c8bb757 sparc64: simplify vmemmap_populate

:::::: TO: Pavel Tatashin <pasha.tatashin@oracle.com>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.org>

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


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [akpm-mm:mm-stable 72/140] arch/sparc/mm/init_64.c:2582:16: error: implicit declaration of function 'vmemmap_pgd_populate'; did you mean 'vmemmap_populate'?
  2026-03-25  3:10 [akpm-mm:mm-stable 72/140] arch/sparc/mm/init_64.c:2582:16: error: implicit declaration of function 'vmemmap_pgd_populate'; did you mean 'vmemmap_populate'? kernel test robot
@ 2026-03-25  3:27 ` Andrew Morton
  2026-03-25  3:57   ` Philip Li
  0 siblings, 1 reply; 5+ messages in thread
From: Andrew Morton @ 2026-03-25  3:27 UTC (permalink / raw)
  To: kernel test robot
  Cc: Chengkaitao, oe-kbuild-all, David Hildenbrand,
	Linux Memory Management List

On Wed, 25 Mar 2026 11:10:49 +0800 kernel test robot <lkp@intel.com> wrote:

> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-stable
> head:   e393ce79b3cf63c2810be882eb6e531a54f520f4
> commit: e504282091c8e4dc4f945c89d9b44ac2e0bfe504 [72/140] mm: convert vmemmap_p?d_populate() to static functions
> config: sparc-randconfig-001-20260325 (https://download.01.org/0day-ci/archive/20260325/202603251147.CtgepAeH-lkp@intel.com/config)
> compiler: sparc64-linux-gcc (GCC) 8.5.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260325/202603251147.CtgepAeH-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/202603251147.CtgepAeH-lkp@intel.com/
> 
> All error/warnings (new ones prefixed by >>):
> 
>    arch/sparc/mm/init_64.c: In function 'sun4v_linear_pte_xor_finalize':
>    arch/sparc/mm/init_64.c:2202:16: warning: variable 'pagecv_flag' set but not used [-Wunused-but-set-variable]
>      unsigned long pagecv_flag;
>                    ^~~~~~~~~~~
>    arch/sparc/mm/init_64.c: In function 'vmemmap_populate':
> >> arch/sparc/mm/init_64.c:2582:16: error: implicit declaration of function 'vmemmap_pgd_populate'; did you mean 'vmemmap_populate'? [-Werror=implicit-function-declaration]
>       pgd_t *pgd = vmemmap_pgd_populate(vstart, node);
>                    ^~~~~~~~~~~~~~~~~~~~

Oh fecal matter.  Seven weeks in mm.git and then seven milliseconds
after I move it into mm-stable, we get this.

The coincidence is too great.  I assume Kernel Test Robot is somehow
treating the mm-stable differently from other branches?  Can we please
not do that?

Thanks, I dropped the patch.  Chengkaitao, please redo and resend after
7.1-rc1.



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [akpm-mm:mm-stable 72/140] arch/sparc/mm/init_64.c:2582:16: error: implicit declaration of function 'vmemmap_pgd_populate'; did you mean 'vmemmap_populate'?
  2026-03-25  3:27 ` Andrew Morton
@ 2026-03-25  3:57   ` Philip Li
  2026-03-25  4:26     ` Andrew Morton
  0 siblings, 1 reply; 5+ messages in thread
From: Philip Li @ 2026-03-25  3:57 UTC (permalink / raw)
  To: Andrew Morton
  Cc: kernel test robot, Chengkaitao, oe-kbuild-all, David Hildenbrand,
	Linux Memory Management List

On Tue, Mar 24, 2026 at 08:27:54PM -0700, Andrew Morton wrote:
> On Wed, 25 Mar 2026 11:10:49 +0800 kernel test robot <lkp@intel.com> wrote:
> 
> > tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-stable
> > head:   e393ce79b3cf63c2810be882eb6e531a54f520f4
> > commit: e504282091c8e4dc4f945c89d9b44ac2e0bfe504 [72/140] mm: convert vmemmap_p?d_populate() to static functions
> > config: sparc-randconfig-001-20260325 (https://download.01.org/0day-ci/archive/20260325/202603251147.CtgepAeH-lkp@intel.com/config)
> > compiler: sparc64-linux-gcc (GCC) 8.5.0
> > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260325/202603251147.CtgepAeH-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/202603251147.CtgepAeH-lkp@intel.com/
> > 
> > All error/warnings (new ones prefixed by >>):
> > 
> >    arch/sparc/mm/init_64.c: In function 'sun4v_linear_pte_xor_finalize':
> >    arch/sparc/mm/init_64.c:2202:16: warning: variable 'pagecv_flag' set but not used [-Wunused-but-set-variable]
> >      unsigned long pagecv_flag;
> >                    ^~~~~~~~~~~
> >    arch/sparc/mm/init_64.c: In function 'vmemmap_populate':
> > >> arch/sparc/mm/init_64.c:2582:16: error: implicit declaration of function 'vmemmap_pgd_populate'; did you mean 'vmemmap_populate'? [-Werror=implicit-function-declaration]
> >       pgd_t *pgd = vmemmap_pgd_populate(vstart, node);
> >                    ^~~~~~~~~~~~~~~~~~~~
> 
> Oh fecal matter.  Seven weeks in mm.git and then seven milliseconds
> after I move it into mm-stable, we get this.
> 
> The coincidence is too great.  I assume Kernel Test Robot is somehow
> treating the mm-stable differently from other branches?  Can we please
> not do that?

Sorry for this "coincidence", the bot does treat all branches equally and
there's no special handling of mm-stable. One possibility is the randconfig
is just generated on 20260325 "sparc-randconfig-001-20260325", which is able
to expose this issue for sparc arch.

> 
> Thanks, I dropped the patch.  Chengkaitao, please redo and resend after
> 7.1-rc1.
> 
> 


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [akpm-mm:mm-stable 72/140] arch/sparc/mm/init_64.c:2582:16: error: implicit declaration of function 'vmemmap_pgd_populate'; did you mean 'vmemmap_populate'?
  2026-03-25  3:57   ` Philip Li
@ 2026-03-25  4:26     ` Andrew Morton
  2026-03-25  5:04       ` Philip Li
  0 siblings, 1 reply; 5+ messages in thread
From: Andrew Morton @ 2026-03-25  4:26 UTC (permalink / raw)
  To: Philip Li
  Cc: kernel test robot, Chengkaitao, oe-kbuild-all, David Hildenbrand,
	Linux Memory Management List

On Wed, 25 Mar 2026 11:57:27 +0800 Philip Li <philip.li@intel.com> wrote:

> > The coincidence is too great.  I assume Kernel Test Robot is somehow
> > treating the mm-stable differently from other branches?  Can we please
> > not do that?
> 
> Sorry for this "coincidence", the bot does treat all branches equally and
> there's no special handling of mm-stable. One possibility is the randconfig
> is just generated on 20260325 "sparc-randconfig-001-20260325", which is able
> to expose this issue for sparc arch.

huh, OK, thanks.  I was able to reproduce it with sparc64 defconfig.




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [akpm-mm:mm-stable 72/140] arch/sparc/mm/init_64.c:2582:16: error: implicit declaration of function 'vmemmap_pgd_populate'; did you mean 'vmemmap_populate'?
  2026-03-25  4:26     ` Andrew Morton
@ 2026-03-25  5:04       ` Philip Li
  0 siblings, 0 replies; 5+ messages in thread
From: Philip Li @ 2026-03-25  5:04 UTC (permalink / raw)
  To: Andrew Morton
  Cc: kernel test robot, Chengkaitao, oe-kbuild-all, David Hildenbrand,
	Linux Memory Management List

On Tue, Mar 24, 2026 at 09:26:58PM -0700, Andrew Morton wrote:
> On Wed, 25 Mar 2026 11:57:27 +0800 Philip Li <philip.li@intel.com> wrote:
> 
> > > The coincidence is too great.  I assume Kernel Test Robot is somehow
> > > treating the mm-stable differently from other branches?  Can we please
> > > not do that?
> > 
> > Sorry for this "coincidence", the bot does treat all branches equally and
> > there's no special handling of mm-stable. One possibility is the randconfig
> > is just generated on 20260325 "sparc-randconfig-001-20260325", which is able
> > to expose this issue for sparc arch.
> 
> huh, OK, thanks.  I was able to reproduce it with sparc64 defconfig.

Apologize for my conclusion, i did a check of internal data when replies mail at
that time and only find the errors of randconfig. Since sparc64-defconfig is recorded
as done but not shown in the error record, I made the wrong conclusion that this is
exposed by randconfig. The truth is sparc64-defconfig does cause build failure.

recent_errors/
└── sparc-randconfig-001-20260325
    ├── arch-sparc-mm-init_64.c:error:implicit-declaration-of-function-vmemmap_p4d_populate
    ├── arch-sparc-mm-init_64.c:error:implicit-declaration-of-function-vmemmap_pgd_populate
    ├── arch-sparc-mm-init_64.c:error:implicit-declaration-of-function-vmemmap_pud_populate
    ├── arch-sparc-mm-init_64.c:warning:assignment-to-p4d_t-aka-struct-anonymous-from-int-makes-pointer-from-integer-without-a-cast
    ├── arch-sparc-mm-init_64.c:warning:assignment-to-pud_t-aka-struct-anonymous-from-int-makes-pointer-from-integer-without-a-cast
    └── arch-sparc-mm-init_64.c:warning:initialization-of-pgd_t-aka-struct-anonymous-from-int-makes-pointer-from-integer-without-a-cast

I will do more investigation to understand why bot doesn't report issue out during the
7 weeks window, and fix the bug. Sorry again about this miss.

Thanks

> 
> 


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-03-25  5:04 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-25  3:10 [akpm-mm:mm-stable 72/140] arch/sparc/mm/init_64.c:2582:16: error: implicit declaration of function 'vmemmap_pgd_populate'; did you mean 'vmemmap_populate'? kernel test robot
2026-03-25  3:27 ` Andrew Morton
2026-03-25  3:57   ` Philip Li
2026-03-25  4:26     ` Andrew Morton
2026-03-25  5:04       ` Philip Li

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox