Hi Wang,
FYI, the error/warning still remains.
tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 4a0359af8c9d84ec3320a8a18f41c7fddf1f7a23 commit: 549b1f40b56511536196f7522ffa4d7b3da42337 [1540/1540] mm/sharepool: Implement mg_sp_make_share_u2k() config: arm64-randconfig-003-20241128 (https://download.01.org/0day-ci/archive/20241128/202411280023.QYDiEv46-lkp@i...) compiler: clang version 20.0.0git (https://github.com/llvm/llvm-project 592c0fe55f6d9a811028b5f3507be91458ab2713) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241128/202411280023.QYDiEv46-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/202411280023.QYDiEv46-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from mm/share_pool.c:21: In file included from include/linux/share_pool.h:5: In file included from include/linux/mman.h:5: In file included from include/linux/mm.h:2174: include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion] 522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_" | ~~~~~~~~~~~ ^ ~~~
mm/share_pool.c:1226:14: error: call to undeclared function 'huge_ptep_get'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
1226 | pte_t pte = huge_ptep_get(ptep); | ^
mm/share_pool.c:1226:8: error: initializing 'pte_t' with an expression of incompatible type 'int'
1226 | pte_t pte = huge_ptep_get(ptep); | ^ ~~~~~~~~~~~~~~~~~~~ 1 warning and 2 errors generated.
vim +/huge_ptep_get +1226 mm/share_pool.c
1221 1222 static int sp_hugetlb_entry(pte_t *ptep, unsigned long hmask, 1223 unsigned long addr, unsigned long next, 1224 struct mm_walk *walk) 1225 {
1226 pte_t pte = huge_ptep_get(ptep);
1227 struct page *page = pte_page(pte); 1228 struct sp_walk_data *sp_walk_data; 1229 1230 if (unlikely(!pte_present(pte))) { 1231 pr_debug("the page of addr %lx unexpectedly not in RAM\n", (unsigned long)addr); 1232 return -EFAULT; 1233 } 1234 1235 sp_walk_data = walk->private; 1236 get_page(page); 1237 sp_walk_data->pages[sp_walk_data->page_count++] = page; 1238 return 0; 1239 } 1240