Message ID | 20231007124522.34834-1-zhouchuyi@bytedance.com (mailing list archive) |
---|---|
Headers | show |
Series | Add Open-coded task, css_task and css iters | expand |
On 10/7/23 2:45 PM, Chuyi Zhou wrote: > Hi, > > This is version 4 of task, css_task and css iters support. > Thanks for your review! > > --- Changelog --- > > v3 -> v4:https://lore.kernel.org/all/20230925105552.817513-1-zhouchuyi@bytedance.com/ > > * Address all the comments from Andrii in patch-3 ~ patch-6 > * Collect Tejun's ack > * Add a extra patch to rename bpf_iter_task.c to bpf_iter_tasks.c > * Seperate three BPF program files for selftests (iters_task.c iters_css_task.c iters_css.c) This fails to build BPF selftests: [...] /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:166:6: error: variable 'skel' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized] if (!ASSERT_OK(err, "setup_cgroup_environment")) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:190:26: note: uninitialized use occurs here iters_css_task__destroy(skel); ^~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:166:2: note: remove the 'if' if its condition is always false if (!ASSERT_OK(err, "setup_cgroup_environment")) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:162:6: error: variable 'skel' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized] if (!ASSERT_GE(cg_fd, 0, "cg_create")) TEST-OBJ [test_progs] xdp.test.o ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:190:26: note: uninitialized use occurs here iters_css_task__destroy(skel); ^~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:162:2: note: remove the 'if' if its condition is always false if (!ASSERT_GE(cg_fd, 0, "cg_create")) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:159:6: error: variable 'skel' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized] if (!ASSERT_OK(err, "setup_cgroup_environment")) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:190:26: note: uninitialized use occurs here iters_css_task__destroy(skel); ^~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:159:2: note: remove the 'if' if its condition is always false if (!ASSERT_OK(err, "setup_cgroup_environment")) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:154:29: note: initialize the variable 'skel' to silence this warning struct iters_css_task *skel; ^ = NULL /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:213:7: error: variable 'skel' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized] if (!ASSERT_GE(cgs[i].fd, 0, "cg_create")) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:244:21: note: uninitialized use occurs here iters_css__destroy(skel); ^~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:213:3: note: remove the 'if' if its condition is always false if (!ASSERT_GE(cgs[i].fd, 0, "cg_create")) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:209:6: error: variable 'skel' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized] if (!ASSERT_OK(err, "setup_cgroup_environment")) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:244:21: note: uninitialized use occurs here iters_css__destroy(skel); ^~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:209:2: note: remove the 'if' if its condition is always false if (!ASSERT_OK(err, "setup_cgroup_environment")) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:195:24: note: initialize the variable 'skel' to silence this warning struct iters_css *skel; ^ = NULL 5 errors generated. make: *** [Makefile:605: /tmp/work/bpf/bpf/tools/testing/selftests/bpf/iters.test.o] Error 1 make: *** Waiting for unfinished jobs.... make: Leaving directory '/tmp/work/bpf/bpf/tools/testing/selftests/bpf' Error: Process completed with exit code 2.
Hello, 在 2023/10/10 16:01, Daniel Borkmann 写道: > On 10/7/23 2:45 PM, Chuyi Zhou wrote: >> Hi, >> >> This is version 4 of task, css_task and css iters support. >> Thanks for your review! >> >> --- Changelog --- >> >> v3 -> >> v4:https://lore.kernel.org/all/20230925105552.817513-1-zhouchuyi@bytedance.com/ >> >> * Address all the comments from Andrii in patch-3 ~ patch-6 >> * Collect Tejun's ack >> * Add a extra patch to rename bpf_iter_task.c to bpf_iter_tasks.c >> * Seperate three BPF program files for selftests (iters_task.c >> iters_css_task.c iters_css.c) > > This fails to build BPF selftests: > Yes, thanks for the remind! I didn't notice this error since it may only occurs when using llvm-16 to compile the selftest, and when we using gcc, it works OK. (https://github.com/kernel-patches/bpf/actions/runs/6462875618/job/17545170863) I can reproduce this error in my environment. Before sending next version, I would use LLVM-16 to double check. Thanks. > [...] > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:166:6: error: variable 'skel' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized] > if (!ASSERT_OK(err, "setup_cgroup_environment")) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:190:26: > note: uninitialized use occurs here > iters_css_task__destroy(skel); > ^~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:166:2: > note: remove the 'if' if its condition is always false > if (!ASSERT_OK(err, "setup_cgroup_environment")) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:162:6: > error: variable 'skel' is used uninitialized whenever 'if' condition is > true [-Werror,-Wsometimes-uninitialized] > if (!ASSERT_GE(cg_fd, 0, "cg_create")) > TEST-OBJ [test_progs] xdp.test.o > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:190:26: > note: uninitialized use occurs here > iters_css_task__destroy(skel); > ^~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:162:2: > note: remove the 'if' if its condition is always false > if (!ASSERT_GE(cg_fd, 0, "cg_create")) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:159:6: > error: variable 'skel' is used uninitialized whenever 'if' condition is > true [-Werror,-Wsometimes-uninitialized] > if (!ASSERT_OK(err, "setup_cgroup_environment")) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:190:26: > note: uninitialized use occurs here > iters_css_task__destroy(skel); > ^~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:159:2: > note: remove the 'if' if its condition is always false > if (!ASSERT_OK(err, "setup_cgroup_environment")) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:154:29: > note: initialize the variable 'skel' to silence this warning > struct iters_css_task *skel; > ^ > = NULL > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:213:7: > error: variable 'skel' is used uninitialized whenever 'if' condition is > true [-Werror,-Wsometimes-uninitialized] > if (!ASSERT_GE(cgs[i].fd, 0, "cg_create")) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:244:21: > note: uninitialized use occurs here > iters_css__destroy(skel); > ^~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:213:3: > note: remove the 'if' if its condition is always false > if (!ASSERT_GE(cgs[i].fd, 0, "cg_create")) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:209:6: > error: variable 'skel' is used uninitialized whenever 'if' condition is > true [-Werror,-Wsometimes-uninitialized] > if (!ASSERT_OK(err, "setup_cgroup_environment")) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:244:21: > note: uninitialized use occurs here > iters_css__destroy(skel); > ^~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:209:2: > note: remove the 'if' if its condition is always false > if (!ASSERT_OK(err, "setup_cgroup_environment")) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/prog_tests/iters.c:195:24: > note: initialize the variable 'skel' to silence this warning > struct iters_css *skel; > ^ > = NULL > 5 errors generated. > make: *** [Makefile:605: > /tmp/work/bpf/bpf/tools/testing/selftests/bpf/iters.test.o] Error 1 > make: *** Waiting for unfinished jobs.... > make: Leaving directory '/tmp/work/bpf/bpf/tools/testing/selftests/bpf' > Error: Process completed with exit code 2.