Lines Matching refs:btf
18 #include <bpf/btf.h>
133 unsigned char *value, struct btf *btf)
145 if (btf) {
147 .btf = btf,
178 if (btf) {
180 .btf = btf,
746 struct bpf_map_info *map_info, struct btf *btf,
755 print_entry_json(map_info, key, value, btf);
756 } else if (btf) {
758 .btf = btf,
791 static struct btf *btf_vmlinux;
793 static int get_map_kv_btf(const struct bpf_map_info *info, struct btf **btf)
801 p_err("failed to get kernel btf");
805 *btf = btf_vmlinux;
807 *btf = btf__load_from_kernel_by_id(info->btf_id);
808 if (!*btf) {
810 p_err("failed to get btf");
813 *btf = NULL;
819 static void free_map_kv_btf(struct btf *btf)
821 if (btf != btf_vmlinux)
822 btf__free(btf);
831 struct btf *btf = NULL;
845 err = get_map_kv_btf(info, &btf);
875 if (!dump_map_elem(fd, key, value, info, btf, wtr))
893 free_map_kv_btf(btf);
932 p_info("failed to create json writer for btf. falling back to plain output");
1038 struct btf *btf;
1040 if (get_map_kv_btf(info, &btf))
1044 print_entry_json(info, key, value, btf);
1045 } else if (btf) {
1047 * so let's create separate writer for btf
1051 p_info("failed to create json writer for btf. falling back to plain output");
1052 btf__free(btf);
1053 btf = NULL;
1057 .btf = btf,
1068 btf__free(btf);