info_linear 413 tools/bpf/bpftool/prog.c struct bpf_prog_info_linear *info_linear; info_linear 487 tools/bpf/bpftool/prog.c info_linear = bpf_program__get_prog_info_linear(fd, arrays); info_linear 489 tools/bpf/bpftool/prog.c if (IS_ERR_OR_NULL(info_linear)) { info_linear 494 tools/bpf/bpftool/prog.c info = &info_linear->info; info_linear 646 tools/bpf/bpftool/prog.c free(info_linear); info_linear 650 tools/bpf/bpftool/prog.c free(info_linear); info_linear 5758 tools/lib/bpf/libbpf.c struct bpf_prog_info_linear *info_linear; info_linear 5802 tools/lib/bpf/libbpf.c info_linear = malloc(sizeof(struct bpf_prog_info_linear) + data_len); info_linear 5803 tools/lib/bpf/libbpf.c if (!info_linear) info_linear 5807 tools/lib/bpf/libbpf.c info_linear->arrays = arrays; info_linear 5808 tools/lib/bpf/libbpf.c memset(&info_linear->info, 0, sizeof(info)); info_linear 5809 tools/lib/bpf/libbpf.c ptr = info_linear->data; info_linear 5821 tools/lib/bpf/libbpf.c bpf_prog_info_set_offset_u32(&info_linear->info, info_linear 5823 tools/lib/bpf/libbpf.c bpf_prog_info_set_offset_u32(&info_linear->info, info_linear 5825 tools/lib/bpf/libbpf.c bpf_prog_info_set_offset_u64(&info_linear->info, info_linear 5832 tools/lib/bpf/libbpf.c err = bpf_obj_get_info_by_fd(fd, &info_linear->info, &info_len); info_linear 5835 tools/lib/bpf/libbpf.c free(info_linear); info_linear 5849 tools/lib/bpf/libbpf.c v2 = bpf_prog_info_read_offset_u32(&info_linear->info, info_linear 5855 tools/lib/bpf/libbpf.c v2 = bpf_prog_info_read_offset_u32(&info_linear->info, info_linear 5862 tools/lib/bpf/libbpf.c info_linear->info_len = sizeof(struct bpf_prog_info); info_linear 5863 tools/lib/bpf/libbpf.c info_linear->data_len = data_len; info_linear 5865 tools/lib/bpf/libbpf.c return info_linear; info_linear 5868 tools/lib/bpf/libbpf.c void bpf_program__bpil_addr_to_offs(struct bpf_prog_info_linear *info_linear) info_linear 5876 tools/lib/bpf/libbpf.c if ((info_linear->arrays & (1UL << i)) == 0) info_linear 5880 tools/lib/bpf/libbpf.c addr = bpf_prog_info_read_offset_u64(&info_linear->info, info_linear 5882 tools/lib/bpf/libbpf.c offs = addr - ptr_to_u64(info_linear->data); info_linear 5883 tools/lib/bpf/libbpf.c bpf_prog_info_set_offset_u64(&info_linear->info, info_linear 5888 tools/lib/bpf/libbpf.c void bpf_program__bpil_offs_to_addr(struct bpf_prog_info_linear *info_linear) info_linear 5896 tools/lib/bpf/libbpf.c if ((info_linear->arrays & (1UL << i)) == 0) info_linear 5900 tools/lib/bpf/libbpf.c offs = bpf_prog_info_read_offset_u64(&info_linear->info, info_linear 5902 tools/lib/bpf/libbpf.c addr = offs + ptr_to_u64(info_linear->data); info_linear 5903 tools/lib/bpf/libbpf.c bpf_prog_info_set_offset_u64(&info_linear->info, info_linear 1716 tools/perf/util/annotate.c struct bpf_prog_info_linear *info_linear; info_linear 1764 tools/perf/util/annotate.c info_linear = info_node->info_linear; info_linear 1767 tools/perf/util/annotate.c info.buffer = (void *)(uintptr_t)(info_linear->info.jited_prog_insns); info_linear 1768 tools/perf/util/annotate.c info.buffer_length = info_linear->info.jited_prog_len; info_linear 1770 tools/perf/util/annotate.c if (info_linear->info.nr_line_info) info_linear 1771 tools/perf/util/annotate.c prog_linfo = bpf_prog_linfo__new(&info_linear->info); info_linear 1773 tools/perf/util/annotate.c if (info_linear->info.btf_id) { info_linear 1777 tools/perf/util/annotate.c info_linear->info.btf_id); info_linear 1803 tools/perf/util/annotate.c addr = pc + ((u64 *)(uintptr_t)(info_linear->info.jited_ksyms))[sub_id]; info_linear 37 tools/perf/util/bpf-event.c struct bpf_prog_info_linear *info_linear; info_linear 50 tools/perf/util/bpf-event.c info_linear = info_node->info_linear; info_linear 52 tools/perf/util/bpf-event.c for (i = 0; i < info_linear->info.nr_jited_ksyms; i++) { info_linear 53 tools/perf/util/bpf-event.c u64 *addrs = (u64 *)(uintptr_t)(info_linear->info.jited_ksyms); info_linear 166 tools/perf/util/bpf-event.c struct bpf_prog_info_linear *info_linear; info_linear 190 tools/perf/util/bpf-event.c info_linear = bpf_program__get_prog_info_linear(fd, arrays); info_linear 191 tools/perf/util/bpf-event.c if (IS_ERR_OR_NULL(info_linear)) { info_linear 192 tools/perf/util/bpf-event.c info_linear = NULL; info_linear 197 tools/perf/util/bpf-event.c if (info_linear->info_len < offsetof(struct bpf_prog_info, prog_tags)) { info_linear 202 tools/perf/util/bpf-event.c info = &info_linear->info; info_linear 277 tools/perf/util/bpf-event.c info_node->info_linear = info_linear; info_linear 279 tools/perf/util/bpf-event.c info_linear = NULL; info_linear 290 tools/perf/util/bpf-event.c free(info_linear); info_linear 346 tools/perf/util/bpf-event.c struct bpf_prog_info_linear *info_linear; info_linear 365 tools/perf/util/bpf-event.c info_linear = bpf_program__get_prog_info_linear(fd, arrays); info_linear 366 tools/perf/util/bpf-event.c if (IS_ERR_OR_NULL(info_linear)) { info_linear 371 tools/perf/util/bpf-event.c btf_id = info_linear->info.btf_id; info_linear 375 tools/perf/util/bpf-event.c info_node->info_linear = info_linear; info_linear 378 tools/perf/util/bpf-event.c free(info_linear); info_linear 22 tools/perf/util/bpf-event.h struct bpf_prog_info_linear *info_linear; info_linear 723 tools/perf/util/dso.c if (!node || !node->info_linear) { info_linear 728 tools/perf/util/dso.c len = node->info_linear->info.jited_prog_len; info_linear 729 tools/perf/util/dso.c buf = (u8 *)(uintptr_t)node->info_linear->info.jited_prog_insns; info_linear 744 tools/perf/util/dso.c if (!node || !node->info_linear) { info_linear 749 tools/perf/util/dso.c dso->data.file_size = node->info_linear->info.jited_prog_len; info_linear 19 tools/perf/util/env.c __u32 prog_id = info_node->info_linear->info.id; info_linear 30 tools/perf/util/env.c if (prog_id < node->info_linear->info.id) { info_linear 32 tools/perf/util/env.c } else if (prog_id > node->info_linear->info.id) { info_linear 58 tools/perf/util/env.c if (prog_id < node->info_linear->info.id) info_linear 60 tools/perf/util/env.c else if (prog_id > node->info_linear->info.id) info_linear 939 tools/perf/util/header.c node->info_linear->data_len; info_linear 942 tools/perf/util/header.c bpf_program__bpil_addr_to_offs(node->info_linear); info_linear 943 tools/perf/util/header.c ret = do_write(ff, node->info_linear, len); info_linear 948 tools/perf/util/header.c bpf_program__bpil_offs_to_addr(node->info_linear); info_linear 1549 tools/perf/util/header.c bpf_event__print_bpf_prog_info(&node->info_linear->info, info_linear 2672 tools/perf/util/header.c struct bpf_prog_info_linear *info_linear; info_linear 2691 tools/perf/util/header.c info_linear = NULL; info_linear 2703 tools/perf/util/header.c info_linear = malloc(sizeof(struct bpf_prog_info_linear) + info_linear 2705 tools/perf/util/header.c if (!info_linear) info_linear 2707 tools/perf/util/header.c info_linear->info_len = sizeof(struct bpf_prog_info); info_linear 2708 tools/perf/util/header.c info_linear->data_len = data_len; info_linear 2709 tools/perf/util/header.c if (do_read_u64(ff, (u64 *)(&info_linear->arrays))) info_linear 2711 tools/perf/util/header.c if (__do_read(ff, &info_linear->info, info_len)) info_linear 2714 tools/perf/util/header.c memset(((void *)(&info_linear->info)) + info_len, 0, info_linear 2717 tools/perf/util/header.c if (__do_read(ff, info_linear->data, data_len)) info_linear 2725 tools/perf/util/header.c bpf_program__bpil_offs_to_addr(info_linear); info_linear 2726 tools/perf/util/header.c info_node->info_linear = info_linear; info_linear 2733 tools/perf/util/header.c free(info_linear);