Hi Zhou,
FYI, the error/warning still remains.
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 3841d75a6dcd12d108aaf56560b99431d18169e4 commit: d45b33b72c530e64219ad997947a33f6e07d339c [18200/23799] share pool: Try to compact when memory is insufficient config: arm64-randconfig-003-20240928 (https://download.01.org/0day-ci/archive/20240928/202409281442.EoXjS7UC-lkp@i...) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240928/202409281442.EoXjS7UC-lkp@i...)
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/202409281442.EoXjS7UC-lkp@intel.com/
All errors (new ones prefixed by >>):
mm/share_pool.c: In function 'sp_compact_nodes':
mm/share_pool.c:1043:9: error: implicit declaration of function 'sysctl_compaction_handler'; did you mean 'sysctl_memcg_qos_handler'? [-Werror=implicit-function-declaration]
1043 | sysctl_compaction_handler(NULL, 1, NULL, NULL, NULL); | ^~~~~~~~~~~~~~~~~~~~~~~~~ | sysctl_memcg_qos_handler mm/share_pool.c: In function 'sp_hugetlb_entry': mm/share_pool.c:1772:21: error: implicit declaration of function 'huge_ptep_get' [-Werror=implicit-function-declaration] 1772 | pte_t pte = huge_ptep_get(ptep); | ^~~~~~~~~~~~~ mm/share_pool.c:1772:21: error: invalid initializer mm/share_pool.c: In function 'sharepool_no_page': mm/share_pool.c:2524:30: error: implicit declaration of function 'huge_pte_none'; did you mean 'huge_pte_lock'? [-Werror=implicit-function-declaration] 2524 | if (!huge_pte_none(huge_ptep_get(ptep))) { | ^~~~~~~~~~~~~ | huge_pte_lock mm/share_pool.c:2537:23: error: implicit declaration of function 'huge_add_to_page_cache'; did you mean 'add_to_page_cache'? [-Werror=implicit-function-declaration] 2537 | err = huge_add_to_page_cache(page, mapping, idx); | ^~~~~~~~~~~~~~~~~~~~~~ | add_to_page_cache mm/share_pool.c:2559:9: error: implicit declaration of function 'set_huge_pte_at'; did you mean 'set_huge_swap_pte_at'? [-Werror=implicit-function-declaration] 2559 | set_huge_pte_at(mm, haddr, ptep, new_pte); | ^~~~~~~~~~~~~~~ | set_huge_swap_pte_at mm/share_pool.c:2561:9: error: implicit declaration of function 'hugetlb_count_add'; did you mean 'hugetlb_count_sub'? [-Werror=implicit-function-declaration] 2561 | hugetlb_count_add(pages_per_huge_page(h), mm); | ^~~~~~~~~~~~~~~~~ | hugetlb_count_sub mm/share_pool.c: In function 'sp_alloc_pages': mm/share_pool.c:2597:24: error: implicit declaration of function 'hugetlb_alloc_hugepage'; did you mean 'vmalloc_hugepage'? [-Werror=implicit-function-declaration] 2597 | return hugetlb_alloc_hugepage(NUMA_NO_NODE, HUGETLB_ALLOC_NONE); | ^~~~~~~~~~~~~~~~~~~~~~ | vmalloc_hugepage mm/share_pool.c:2597:61: error: 'HUGETLB_ALLOC_NONE' undeclared (first use in this function); did you mean 'HUGETLB_ANON_FILE'? 2597 | return hugetlb_alloc_hugepage(NUMA_NO_NODE, HUGETLB_ALLOC_NONE); | ^~~~~~~~~~~~~~~~~~ | HUGETLB_ANON_FILE mm/share_pool.c:2597:61: note: each undeclared identifier is reported only once for each function it appears in mm/share_pool.c:2600:1: warning: control reaches end of non-void function [-Wreturn-type] 2600 | } | ^ mm/share_pool.c: At top level: mm/share_pool.c:2482:12: warning: 'spa_stat_show' defined but not used [-Wunused-function] 2482 | static int spa_stat_show(struct seq_file *seq, void *offset) | ^~~~~~~~~~~~~ mm/share_pool.c:2363:12: warning: 'proc_stat_show' defined but not used [-Wunused-function] 2363 | static int proc_stat_show(struct seq_file *seq, void *offset) | ^~~~~~~~~~~~~~ cc1: some warnings being treated as errors
vim +1043 mm/share_pool.c
1039 1040 static unsigned long last_jiffies; 1041 static void sp_compact_nodes(struct work_struct *work) 1042 {
1043 sysctl_compaction_handler(NULL, 1, NULL, NULL, NULL);
1044 1045 kfree(work); 1046 } 1047