All of lore.kernel.org
 help / color / mirror / Atom feed
* [davidhildenbrand:b4/bootmem_info 8/11] arch/x86/mm/init_64.c:1050:9: error: too few arguments to function 'free_pagetable'
@ 2026-04-30 11:15 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-04-30 11:15 UTC (permalink / raw)
  To: David Hildenbrand (Arm); +Cc: oe-kbuild-all

tree:   https://github.com/davidhildenbrand/linux b4/bootmem_info
head:   80cd9eaf52f7ea07b36881a937059d7075ac110a
commit: 21143629e50fc0929fea624f4bf416dbd35541ef [8/11] arch/x86/mm: move free_reserved_pages() to mm.h
config: x86_64-randconfig-072-20260430 (https://download.01.org/0day-ci/archive/20260430/202604301904.DdB3UOGs-lkp@intel.com/config)
compiler: gcc-13 (Debian 13.3.0-16) 13.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260430/202604301904.DdB3UOGs-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/202604301904.DdB3UOGs-lkp@intel.com/

All errors (new ones prefixed by >>):

   arch/x86/mm/init_64.c: In function 'free_pte_table':
>> arch/x86/mm/init_64.c:1050:9: error: too few arguments to function 'free_pagetable'
    1050 |         free_pagetable(pmd_page(*pmd));
         |         ^~~~~~~~~~~~~~
   arch/x86/mm/init_64.c:1003:23: note: declared here
    1003 | static void __meminit free_pagetable(struct page *page, int order)
         |                       ^~~~~~~~~~~~~~
   arch/x86/mm/init_64.c: In function 'free_pmd_table':
   arch/x86/mm/init_64.c:1068:9: error: too few arguments to function 'free_pagetable'
    1068 |         free_pagetable(pud_page(*pud));
         |         ^~~~~~~~~~~~~~
   arch/x86/mm/init_64.c:1003:23: note: declared here
    1003 | static void __meminit free_pagetable(struct page *page, int order)
         |                       ^~~~~~~~~~~~~~
   arch/x86/mm/init_64.c: In function 'free_pud_table':
   arch/x86/mm/init_64.c:1086:9: error: too few arguments to function 'free_pagetable'
    1086 |         free_pagetable(p4d_page(*p4d));
         |         ^~~~~~~~~~~~~~
   arch/x86/mm/init_64.c:1003:23: note: declared here
    1003 | static void __meminit free_pagetable(struct page *page, int order)
         |                       ^~~~~~~~~~~~~~
   arch/x86/mm/init_64.c: In function 'remove_pte_table':
   arch/x86/mm/init_64.c:1119:60: error: 'altmap' undeclared (first use in this function)
    1119 |                         free_vmemmap_pages(pte_page(*pte), altmap, 0);
         |                                                            ^~~~~~
   arch/x86/mm/init_64.c:1119:60: note: each undeclared identifier is reported only once for each function it appears in
   arch/x86/mm/init_64.c: In function 'remove_pmd_table':
   arch/x86/mm/init_64.c:1155:60: warning: passing argument 2 of 'free_vmemmap_pages' makes integer from pointer without a cast [-Wint-conversion]
    1155 |                                                            altmap, PMD_ORDER);
         |                                                            ^~~~~~
         |                                                            |
         |                                                            struct vmem_altmap *
   arch/x86/mm/init_64.c:1018:74: note: expected 'unsigned int' but argument is of type 'struct vmem_altmap *'
    1018 | static void __meminit free_vmemmap_pages(struct page *page, unsigned int order,
         |                                                             ~~~~~~~~~~~~~^~~~~
   In file included from include/linux/mm.h:31,
                    from include/linux/pid_namespace.h:7,
                    from include/linux/ptrace.h:10,
                    from arch/x86/mm/init_64.c:16:
   include/linux/pgtable.h:8:25: warning: passing argument 3 of 'free_vmemmap_pages' makes pointer from integer without a cast [-Wint-conversion]
       8 | #define PMD_ORDER       (PMD_SHIFT - PAGE_SHIFT)
         |                         ^~~~~~~~~~~~~~~~~~~~~~~~
         |                         |
         |                         int
   arch/x86/mm/init_64.c:1155:68: note: in expansion of macro 'PMD_ORDER'
    1155 |                                                            altmap, PMD_ORDER);
         |                                                                    ^~~~~~~~~
   arch/x86/mm/init_64.c:1019:37: note: expected 'struct vmem_altmap *' but argument is of type 'int'
    1019 |                 struct vmem_altmap *altmap)
         |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~
   arch/x86/mm/init_64.c:1163:60: warning: passing argument 2 of 'free_vmemmap_pages' makes integer from pointer without a cast [-Wint-conversion]
    1163 |                                                            altmap, PMD_ORDER);
         |                                                            ^~~~~~
         |                                                            |
         |                                                            struct vmem_altmap *
   arch/x86/mm/init_64.c:1018:74: note: expected 'unsigned int' but argument is of type 'struct vmem_altmap *'
    1018 | static void __meminit free_vmemmap_pages(struct page *page, unsigned int order,
         |                                                             ~~~~~~~~~~~~~^~~~~
   include/linux/pgtable.h:8:25: warning: passing argument 3 of 'free_vmemmap_pages' makes pointer from integer without a cast [-Wint-conversion]
       8 | #define PMD_ORDER       (PMD_SHIFT - PAGE_SHIFT)
         |                         ^~~~~~~~~~~~~~~~~~~~~~~~
         |                         |
         |                         int
   arch/x86/mm/init_64.c:1163:68: note: in expansion of macro 'PMD_ORDER'
    1163 |                                                            altmap, PMD_ORDER);
         |                                                                    ^~~~~~~~~
   arch/x86/mm/init_64.c:1019:37: note: expected 'struct vmem_altmap *' but argument is of type 'int'
    1019 |                 struct vmem_altmap *altmap)
         |                 ~~~~~~~~~~~~~~~~~~~~^~~~~~
   arch/x86/mm/init_64.c:1172:17: error: too many arguments to function 'remove_pte_table'
    1172 |                 remove_pte_table(pte_base, addr, next, direct, altmap);
         |                 ^~~~~~~~~~~~~~~~
   arch/x86/mm/init_64.c:1093:1: note: declared here
    1093 | remove_pte_table(pte_t *pte_start, unsigned long addr, unsigned long end,
         | ^~~~~~~~~~~~~~~~

Kconfig warnings: (for reference only)
   WARNING: unmet direct dependencies detected for MFD_STMFX
   Depends on [n]: HAS_IOMEM [=y] && I2C [=y] && OF [=n]
   Selected by [y]:
   - PINCTRL_STMFX [=y] && PINCTRL [=y] && I2C [=y] && HAS_IOMEM [=y]


vim +/free_pagetable +1050 arch/x86/mm/init_64.c

a7e6c7015bf3e0 Dan Williams            2018-03-13  1037  
a7e6c7015bf3e0 Dan Williams            2018-03-13  1038  static void __meminit free_pte_table(pte_t *pte_start, pmd_t *pmd)
ae9aae9eda2db7 Wen Congyang            2013-02-22  1039  {
ae9aae9eda2db7 Wen Congyang            2013-02-22  1040  	pte_t *pte;
ae9aae9eda2db7 Wen Congyang            2013-02-22  1041  	int i;
ae9aae9eda2db7 Wen Congyang            2013-02-22  1042  
ae9aae9eda2db7 Wen Congyang            2013-02-22  1043  	for (i = 0; i < PTRS_PER_PTE; i++) {
ae9aae9eda2db7 Wen Congyang            2013-02-22  1044  		pte = pte_start + i;
dcb32d9913b7ed Dave Hansen             2016-07-07  1045  		if (!pte_none(*pte))
ae9aae9eda2db7 Wen Congyang            2013-02-22  1046  			return;
ae9aae9eda2db7 Wen Congyang            2013-02-22  1047  	}
ae9aae9eda2db7 Wen Congyang            2013-02-22  1048  
54aa699e8094ef Bjorn Helgaas           2024-01-02  1049  	/* free a pte table */
5833bfd246878d David Hildenbrand (Arm  2026-04-28 @1050) 	free_pagetable(pmd_page(*pmd));
ae9aae9eda2db7 Wen Congyang            2013-02-22  1051  	spin_lock(&init_mm.page_table_lock);
ae9aae9eda2db7 Wen Congyang            2013-02-22  1052  	pmd_clear(pmd);
ae9aae9eda2db7 Wen Congyang            2013-02-22  1053  	spin_unlock(&init_mm.page_table_lock);
ae9aae9eda2db7 Wen Congyang            2013-02-22  1054  }
ae9aae9eda2db7 Wen Congyang            2013-02-22  1055  

:::::: The code at line 1050 was first introduced by commit
:::::: 5833bfd246878da357249441cf406b776b482aca x86/mm: drop order parameter from free_pagetable()

:::::: TO: David Hildenbrand (Arm) <david@kernel.org>
:::::: CC: David Hildenbrand (Arm) <david@kernel.org>

-- 
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:[~2026-04-30 11:15 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-30 11:15 [davidhildenbrand:b4/bootmem_info 8/11] arch/x86/mm/init_64.c:1050:9: error: too few arguments to function 'free_pagetable' 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.