Hi Jing,
FYI, the error/warning still remains.
tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 254b433462607f511039b75693d9314822538f20 commit: be8d95530886b0aaa5a59b5c43a285667c9eebc6 [1924/1924] memcg: support priority for oom config: x86_64-allnoconfig (https://download.01.org/0day-ci/archive/20250214/202502142019.HSCMUy5Y-lkp@i...) compiler: clang version 19.1.3 (https://github.com/llvm/llvm-project ab51eccf88f5321e7c60591c5546b254b6afab99) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250214/202502142019.HSCMUy5Y-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/202502142019.HSCMUy5Y-lkp@intel.com/
All warnings (new ones prefixed by >>):
mm/oom_kill.c:316: warning: Function parameter or member 'task' not described in 'oom_next_task' mm/oom_kill.c:316: warning: Function parameter or member 'oc' not described in 'oom_next_task' mm/oom_kill.c:316: warning: Function parameter or member 'points' not described in 'oom_next_task' mm/oom_kill.c:316: warning: expecting prototype for We choose the task in low(). Prototype was for oom_next_task() instead
vim +316 mm/oom_kill.c
308 309 #ifdef CONFIG_MEMCG_OOM_PRIORITY 310 /** 311 * We choose the task in low-priority memcg firstly. For the same state, we 312 * choose the task with the highest number of 'points'. 313 */ 314 static bool oom_next_task(struct task_struct *task, struct oom_control *oc, 315 long points)
316 {
317 struct mem_cgroup *cur_memcg; 318 struct mem_cgroup *oc_memcg; 319 int cur_memcg_prio, oc_memcg_prio; 320 321 if (points == LONG_MIN) 322 return true; 323 324 if (!oc->chosen) 325 return false; 326 327 rcu_read_lock(); 328 oc_memcg = mem_cgroup_from_task(oc->chosen); 329 cur_memcg = mem_cgroup_from_task(task); 330 oc_memcg_prio = READ_ONCE(oc_memcg->oom_prio); 331 cur_memcg_prio = READ_ONCE(cur_memcg->oom_prio); 332 rcu_read_unlock(); 333 334 if (cur_memcg_prio == oc_memcg_prio) 335 return points < oc->chosen_points; 336 337 /* if oc is low-priority, so skip the task */ 338 if (oc_memcg_prio == MEMCG_LOW_OOM_PRIORITY) 339 return true; 340 341 return false; 342 } 343 #else 344 static inline bool oom_next_task(struct task_struct *task, 345 struct oom_control *oc, long points) 346 { 347 return points == LONG_MIN || points < oc->chosen_points; 348 } 349 #endif 350