[PATCH bpf-next 2/2] selftests/bpf: Verify program FD after non-autoload programs in lskel

From: Thiébaud Weksteen

Date: Tue Sep 08 2026 - 03:03:16 EST


In test_global_percpu_data.c, dump_percpu_data is defined after two
non-autoload SEC("?kprobe") programs (verifier_strncmp and
verifier_snprintf). Verify in test_global_percpu_data_lskel() that
lskel->progs.dump_percpu_data.prog_fd is properly populated (> 0) when
loaded via the light skeleton.

Fixes: 4c9241bd731a ("selftests/bpf: Add tests to verify global percpu data")
Fixes: 1ed2294b31fc ("selftests/bpf: Test verifier log for global percpu data")
Signed-off-by: Thiébaud Weksteen <tweek@xxxxxxxxxx>
---
tools/testing/selftests/bpf/prog_tests/global_data_init.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/tools/testing/selftests/bpf/prog_tests/global_data_init.c b/tools/testing/selftests/bpf/prog_tests/global_data_init.c
index 7c539cbcf3a1..ebda60200b71 100644
--- a/tools/testing/selftests/bpf/prog_tests/global_data_init.c
+++ b/tools/testing/selftests/bpf/prog_tests/global_data_init.c
@@ -214,6 +214,8 @@ static void test_global_percpu_data_lskel(void)
lskel = test_global_percpu_data_lskel__open_and_load();
if (!ASSERT_OK_PTR(lskel, "test_global_percpu_data_lskel__open_and_load"))
goto out;
+ if (!ASSERT_GT(lskel->progs.dump_percpu_data.prog_fd, 0, "dump_percpu_data.prog_fd"))
+ goto out;

map_fd = lskel->maps.percpu.map_fd;
prog_fd = lskel->progs.update_percpu_data.prog_fd;
--
2.55.0.979.g7e5102b832-goog