Re: [v4 2/4] mm, oom: cgroup-aware OOM killer

From: kbuild test robot
Date: Thu Jul 27 2017 - 17:42:00 EST


Hi Roman,

[auto build test ERROR on linus/master]
[also build test ERROR on v4.13-rc2 next-20170727]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url: https://github.com/0day-ci/linux/commits/Roman-Gushchin/cgroup-aware-OOM-killer/20170728-051627
config: i386-tinyconfig (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
# save the attached .config to linux build tree
make ARCH=i386

All errors (new ones prefixed by >>):

mm/oom_kill.c: In function 'oom_kill_memcg_victim':
>> mm/oom_kill.c:1005:24: error: dereferencing pointer to incomplete type 'struct mem_cgroup'
if (oc->chosen_memcg->oom_kill_all_tasks)
^~

vim +1005 mm/oom_kill.c

982
983 static bool oom_kill_memcg_victim(struct oom_control *oc)
984 {
985 if (oc->chosen) {
986 if (oc->chosen != (void *)-1UL) {
987 __oom_kill_process(oc->chosen);
988 put_task_struct(oc->chosen);
989 schedule_timeout_killable(1);
990 }
991 return true;
992
993 } else if (oc->chosen_memcg) {
994 if (oc->chosen_memcg == (void *)-1UL)
995 return true;
996
997 /* Always begin with the biggest task */
998 oc->chosen_points = 0;
999 oc->chosen = NULL;
1000 mem_cgroup_scan_tasks(oc->chosen_memcg, oom_evaluate_task, oc);
1001 if (oc->chosen && oc->chosen != (void *)-1UL) {
1002 __oom_kill_process(oc->chosen);
1003 put_task_struct(oc->chosen);
1004
> 1005 if (oc->chosen_memcg->oom_kill_all_tasks)
1006 mem_cgroup_scan_tasks(oc->chosen_memcg,
1007 oom_kill_memcg_member,
1008 NULL);
1009 }
1010
1011 mem_cgroup_put(oc->chosen_memcg);
1012 oc->chosen_memcg = NULL;
1013 return true;
1014
1015 } else {
1016 oc->chosen_points = 0;
1017 return false;
1018 }
1019 }
1020

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: application/gzip