:::::: :::::: Manual check reason: "bisect to a FBC not belonging to original linux-review patches: branch: linux-review/Fedorov-Nikita/hq-spinlock-implement-inner-logic/20260418-141252, commit: 3d4e418bdd1eff56f4ab5d286fe20185dd6fce71" :::::: BCC: lkp@intel.com CC: llvm@lists.linux.dev CC: oe-kbuild-all@lists.linux.dev TO: Fedorov Nikita CC: 0day robot CC: Anatoly Stepanov tree: https://github.com/intel-lab-lkp/linux/commits/Fedorov-Nikita/hq-spinlock-implement-inner-logic/20260418-141252 head: 927d09768c86b00d2c23dacec57ffe457c06eb64 commit: 3d4e418bdd1eff56f4ab5d286fe20185dd6fce71 kernel: introduce general hq-spinlock support date: 2 days ago :::::: branch date: 2 days ago :::::: commit date: 2 days ago config: loongarch-allmodconfig compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90) reproduce (this is a W=1 build): 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 | Closes: https://lore.kernel.org/r/202604200320.OSw6aHk9-lkp@intel.com/ All error/warnings (new ones prefixed by >>): >> mm/mempolicy.c:3382:2: error: call to undeclared function 'hq_configure_spin_lock_slowpath'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 3382 | hq_configure_spin_lock_slowpath(); | ^ mm/mempolicy.c:3382:2: note: did you mean 'queued_spin_lock_slowpath'? include/asm-generic/qspinlock.h:103:13: note: 'queued_spin_lock_slowpath' declared here 103 | extern void queued_spin_lock_slowpath(struct qspinlock *lock, u32 val); | ^ 1 error generated. -- >> kernel/locking/qspinlock.c:130:17: warning: no previous prototype for function 'native_queued_spin_lock_slowpath' [-Wmissing-prototypes] 130 | void __lockfunc queued_spin_lock_slowpath(struct qspinlock *lock, u32 val) | ^ kernel/locking/qspinlock.c:104:35: note: expanded from macro 'queued_spin_lock_slowpath' 104 | #define queued_spin_lock_slowpath native_queued_spin_lock_slowpath | ^ kernel/locking/qspinlock.c:130:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 130 | void __lockfunc queued_spin_lock_slowpath(struct qspinlock *lock, u32 val) | ^ | static In file included from kernel/locking/qspinlock.c:423: >> kernel/locking/hqlock_core.h:658:17: warning: variable 'node_tail' set but not used [-Wunused-but-set-variable] 658 | u16 node_head, node_tail; | ^ >> kernel/locking/hqlock_core.h:835:13: warning: no previous prototype for function 'hq_configure_spin_lock_slowpath' [-Wmissing-prototypes] 835 | void __init hq_configure_spin_lock_slowpath(void) | ^ kernel/locking/hqlock_core.h:835:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 835 | void __init hq_configure_spin_lock_slowpath(void) | ^ | static 3 warnings generated. vim +/hq_configure_spin_lock_slowpath +3382 mm/mempolicy.c 1a687c2e9a99335 Mel Gorman 2012-11-22 3328 ^1da177e4c3f415 Linus Torvalds 2005-04-16 3329 void __init numa_policy_init(void) ^1da177e4c3f415 Linus Torvalds 2005-04-16 3330 { b71636e29823c06 Paul Mundt 2007-07-15 3331 nodemask_t interleave_nodes; b71636e29823c06 Paul Mundt 2007-07-15 3332 unsigned long largest = 0; b71636e29823c06 Paul Mundt 2007-07-15 3333 int nid, prefer = 0; b71636e29823c06 Paul Mundt 2007-07-15 3334 ^1da177e4c3f415 Linus Torvalds 2005-04-16 3335 policy_cache = kmem_cache_create("numa_policy", ^1da177e4c3f415 Linus Torvalds 2005-04-16 3336 sizeof(struct mempolicy), 20c2df83d25c6a9 Paul Mundt 2007-07-20 3337 0, SLAB_PANIC, NULL); ^1da177e4c3f415 Linus Torvalds 2005-04-16 3338 ^1da177e4c3f415 Linus Torvalds 2005-04-16 3339 sn_cache = kmem_cache_create("shared_policy_node", ^1da177e4c3f415 Linus Torvalds 2005-04-16 3340 sizeof(struct sp_node), 20c2df83d25c6a9 Paul Mundt 2007-07-20 3341 0, SLAB_PANIC, NULL); ^1da177e4c3f415 Linus Torvalds 2005-04-16 3342 5606e3877ad8bae Mel Gorman 2012-11-02 3343 for_each_node(nid) { 5606e3877ad8bae Mel Gorman 2012-11-02 3344 preferred_node_policy[nid] = (struct mempolicy) { 5606e3877ad8bae Mel Gorman 2012-11-02 3345 .refcnt = ATOMIC_INIT(1), 5606e3877ad8bae Mel Gorman 2012-11-02 3346 .mode = MPOL_PREFERRED, 5606e3877ad8bae Mel Gorman 2012-11-02 3347 .flags = MPOL_F_MOF | MPOL_F_MORON, 269fbe72cded0af Ben Widawsky 2021-06-30 3348 .nodes = nodemask_of_node(nid), 5606e3877ad8bae Mel Gorman 2012-11-02 3349 }; 5606e3877ad8bae Mel Gorman 2012-11-02 3350 } 5606e3877ad8bae Mel Gorman 2012-11-02 3351 b71636e29823c06 Paul Mundt 2007-07-15 3352 /* b71636e29823c06 Paul Mundt 2007-07-15 3353 * Set interleaving policy for system init. Interleaving is only b71636e29823c06 Paul Mundt 2007-07-15 3354 * enabled across suitably sized nodes (default is >= 16MB), or b71636e29823c06 Paul Mundt 2007-07-15 3355 * fall back to the largest node if they're all smaller. b71636e29823c06 Paul Mundt 2007-07-15 3356 */ b71636e29823c06 Paul Mundt 2007-07-15 3357 nodes_clear(interleave_nodes); 01f13bd607346af Lai Jiangshan 2012-12-12 3358 for_each_node_state(nid, N_MEMORY) { b71636e29823c06 Paul Mundt 2007-07-15 3359 unsigned long total_pages = node_present_pages(nid); b71636e29823c06 Paul Mundt 2007-07-15 3360 b71636e29823c06 Paul Mundt 2007-07-15 3361 /* Preserve the largest node */ b71636e29823c06 Paul Mundt 2007-07-15 3362 if (largest < total_pages) { b71636e29823c06 Paul Mundt 2007-07-15 3363 largest = total_pages; b71636e29823c06 Paul Mundt 2007-07-15 3364 prefer = nid; b71636e29823c06 Paul Mundt 2007-07-15 3365 } b71636e29823c06 Paul Mundt 2007-07-15 3366 b71636e29823c06 Paul Mundt 2007-07-15 3367 /* Interleave this node? */ b71636e29823c06 Paul Mundt 2007-07-15 3368 if ((total_pages << PAGE_SHIFT) >= (16 << 20)) b71636e29823c06 Paul Mundt 2007-07-15 3369 node_set(nid, interleave_nodes); b71636e29823c06 Paul Mundt 2007-07-15 3370 } b71636e29823c06 Paul Mundt 2007-07-15 3371 b71636e29823c06 Paul Mundt 2007-07-15 3372 /* All too small, use the largest */ b71636e29823c06 Paul Mundt 2007-07-15 3373 if (unlikely(nodes_empty(interleave_nodes))) b71636e29823c06 Paul Mundt 2007-07-15 3374 node_set(prefer, interleave_nodes); ^1da177e4c3f415 Linus Torvalds 2005-04-16 3375 028fec414d80311 David Rientjes 2008-04-28 3376 if (do_set_mempolicy(MPOL_INTERLEAVE, 0, &interleave_nodes)) b1de0d139c97a60 Mitchel Humpherys 2014-06-06 3377 pr_err("%s: interleaving failed\n", __func__); 1a687c2e9a99335 Mel Gorman 2012-11-22 3378 1a687c2e9a99335 Mel Gorman 2012-11-22 3379 check_numabalancing_enable(); 3d4e418bdd1eff5 Fedorov Nikita 2026-04-16 3380 3d4e418bdd1eff5 Fedorov Nikita 2026-04-16 3381 #ifdef CONFIG_HQSPINLOCKS 3d4e418bdd1eff5 Fedorov Nikita 2026-04-16 @3382 hq_configure_spin_lock_slowpath(); 3d4e418bdd1eff5 Fedorov Nikita 2026-04-16 3383 #endif ^1da177e4c3f415 Linus Torvalds 2005-04-16 3384 } ^1da177e4c3f415 Linus Torvalds 2005-04-16 3385 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki