Hi Christophe, kernel test robot noticed the following build warnings: [auto build test WARNING on akpm-mm/mm-everything] url: https://github.com/intel-lab-lkp/linux/commits/Christophe-Leroy/arm-ptdump-Rename-CONFIG_DEBUG_WX-to-CONFIG_ARM_DEBUG_WX/20240130-183913 base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything patch link: https://lore.kernel.org/r/7943149fe955458cb7b57cd483bf41a3aad94684.1706610398.git.christophe.leroy%40csgroup.eu patch subject: [PATCH v2 4/5] mm: ptdump: Have ptdump_check_wx() return bool config: i386-randconfig-141-20240131 (https://download.01.org/0day-ci/archive/20240201/202402010618.9izDkpGF-lkp@xxxxxxxxx/config) compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240201/202402010618.9izDkpGF-lkp@xxxxxxxxx/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@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202402010618.9izDkpGF-lkp@xxxxxxxxx/ All warnings (new ones prefixed by >>): arch/x86/mm/dump_pagetables.c:365:6: error: cannot combine with previous 'type-name' declaration specifier 365 | bool void ptdump_walk_pgd_level_core(struct seq_file *m, | ^ >> arch/x86/mm/dump_pagetables.c:365:11: warning: no previous prototype for function 'ptdump_walk_pgd_level_core' [-Wmissing-prototypes] 365 | bool void ptdump_walk_pgd_level_core(struct seq_file *m, | ^ arch/x86/mm/dump_pagetables.c:365:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 365 | bool void ptdump_walk_pgd_level_core(struct seq_file *m, | ^ | static 1 warning and 1 error generated. vim +/ptdump_walk_pgd_level_core +365 arch/x86/mm/dump_pagetables.c 364 > 365 bool void ptdump_walk_pgd_level_core(struct seq_file *m, 366 struct mm_struct *mm, pgd_t *pgd, 367 bool checkwx, bool dmesg) 368 { 369 const struct ptdump_range ptdump_ranges[] = { 370 #ifdef CONFIG_X86_64 371 {0, PTRS_PER_PGD * PGD_LEVEL_MULT / 2}, 372 {GUARD_HOLE_END_ADDR, ~0UL}, 373 #else 374 {0, ~0UL}, 375 #endif 376 {0, 0} 377 }; 378 379 struct pg_state st = { 380 .ptdump = { 381 .note_page = note_page, 382 .effective_prot = effective_prot, 383 .range = ptdump_ranges 384 }, 385 .level = -1, 386 .to_dmesg = dmesg, 387 .check_wx = checkwx, 388 .seq = m 389 }; 390 391 ptdump_walk_pgd(&st.ptdump, mm, pgd); 392 393 if (!checkwx) 394 return true; 395 if (st.wx_pages) { 396 pr_info("x86/mm: Checked W+X mappings: FAILED, %lu W+X pages found.\n", 397 st.wx_pages); 398 399 return false; 400 } else { 401 pr_info("x86/mm: Checked W+X mappings: passed, no W+X pages found.\n"); 402 403 return true; 404 } 405 } 406 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki