** Changed in: linux (Ubuntu Jammy) Status: In Progress => Fix Committed
-- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/2054567 Title: Fix bpf selftests build failure after v5.15.139 update Status in linux package in Ubuntu: Invalid Status in linux source package in Jammy: Fix Committed Bug description: SRU justification [Impact] Upstream v5.15.139 (#lp2049432) brought commit "selftests/bpf: Test tail call counting with bpf2bpf and data on stack" that affects one of the bpf kselftests (tailcall_bpf2bpf6). because LIBBPF_OPTS macro does not exists, it does not compile. Error below. [Fix] Initially, I thought cherry-picking commit "libbpf: Rename DECLARE_LIBBPF_OPTS into LIBBPF_OPTS" would be the best, but upstream stable just reverted the commit that broke it. Hence the fix consists of cherry-picking this commit from stable upstream 5.15.49: Commit 62900d358c48 (Revert "selftests/bpf: Test tail call counting with bpf2bpf and data on stack") [Test] This should be solved soon, but compileselftests debian rule does not compile bpf selftests. I tested it by using our regression testing tooling, but same results can be achieved by running: $ make -C linux/tools/testing/selftests TARGETS=bpf SKIP_TARGETS= clean all KDIR=/usr/src/linux-headers-5.15.0-<verson>-generic from the linux tree directory Without the fix, it fails to compile: /root/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/prog_tests/tailcalls.c: In function ‘test_tailcall_bpf2bpf_6’: /root/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/prog_tests/tailcalls.c:822:9: warning: implicit declaration of function ‘LIBBPF_OPTS’; did you mean ‘LIBBPF_API’? [-Wimplicit-function-declaration] 822 | LIBBPF_OPTS(bpf_test_run_opts, topts, | ^~~~~~~~~~~ | LIBBPF_API /root/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/prog_tests/tailcalls.c:822:21: error: ‘bpf_test_run_opts’ undeclared (first use in this function) 822 | LIBBPF_OPTS(bpf_test_run_opts, topts, | ^~~~~~~~~~~~~~~~~ /root/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/prog_tests/tailcalls.c:822:21: note: each undeclared identifier is reported only once for each function it appears in /root/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/prog_tests/tailcalls.c:822:40: error: ‘topts’ undeclared (first use in this function) 822 | LIBBPF_OPTS(bpf_test_run_opts, topts, | ^~~~~ /root/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/prog_tests/tailcalls.c:823:17: error: expected expression before ‘.’ token 823 | .data_in = &pkt_v4, | ^ make[1]: *** [Makefile:471: /root/autotest/client/tmp/ubuntu_bpf/src/linux/tools/testing/selftests/bpf/tailcalls.test.o] Error 1 make: *** [Makefile:172: all] Error 2 With the fix, it compiles. [Regression potential] The only place this is being used is selftests, so the risk is very low. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2054567/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp