diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c
index 97eb6e5dd7c8bdabd0c63cd815a49935642c2f1d..898d5d34ecea32221a4fcf9466886c1cb27b348f 100644
--- a/tools/lib/bpf/libbpf.c
+++ b/tools/lib/bpf/libbpf.c
@@ -1148,6 +1148,7 @@ static int bpf_map__init_kern_struct_ops(struct bpf_map *map)
 			 * presented in the kernel BTF.
 			 */
 			if (libbpf_is_mem_zeroed(mdata, msize)) {
+				st_ops->progs[i] = NULL;
 				pr_info("struct_ops %s: member %s not found in kernel, skipping it as it's set to zero\n",
 					map->name, mname);
 				continue;