| /linux/tools/testing/selftests/bpf/ |
| H A D | trace_helpers.h | 22 struct ksym { struct 28 struct ksym *syms; argument 36 typedef int (*ksym_search_cmp_t)(const void *p1, const struct ksym *p2); 39 struct ksym *ksym_search(long key); 43 struct ksym *ksym_search_local(struct ksyms *ksyms, long key); 48 struct ksym *search_kallsyms_custom_local(struct ksyms *ksyms, const void *p1,
|
| H A D | trace_helpers.c | 90 sizeof(struct ksym), ksyms->sym_cnt + 1); in load_kallsyms_local_common() 98 qsort(ksyms->syms, ksyms->sym_cnt, sizeof(struct ksym), cmp_cb); in load_kallsyms_local_common() 109 return ((struct ksym *)p1)->addr - ((struct ksym *)p2)->addr; in ksym_cmp() 131 struct ksym *ksym_search_local(struct ksyms *ksyms, long key) in ksym_search_local() 161 struct ksym *search_kallsyms_custom_local(struct ksyms *ksyms, const void *p, in search_kallsyms_custom_local() 165 struct ksym *ks; in search_kallsyms_custom_local() 183 struct ksym *ksym_search(long key) in ksym_search() 601 return compare_name(((const struct ksym *)p1)->name, ((const struct ksym *)p2)->name); in load_kallsyms_compare() 604 static int search_kallsyms_compare(const void *p1, const struct ksym *p2) in search_kallsyms_compare() 615 struct ksym *ks; in bpf_get_ksyms()
|
| /linux/scripts/ |
| H A D | Makefile.modpost | 98 ksym-wl := $(CONFIG_UNUSED_KSYMS_WHITELIST) 99 ksym-wl := $(if $(filter-out /%, $(ksym-wl)),$(if $(wildcard $(ksym-wl)),,$(srctree)/))$(ksym-wl) 100 modpost-args += -t $(addprefix -u , $(ksym-wl)) 101 modpost-deps += $(ksym-wl)
|
| /linux/tools/testing/selftests/bpf/prog_tests/ |
| H A D | stacktrace_ips.c | 34 struct ksym *ksym; in check_stacktrace_ips() local 37 ksym = ksym_search_local(ksyms, ips[i]); in check_stacktrace_ips() 38 if (!ASSERT_OK_PTR(ksym, "ksym_search_local")) in check_stacktrace_ips() 40 ASSERT_EQ(ksym->addr, val, "stack_cmp"); in check_stacktrace_ips()
|
| H A D | get_stack_raw_tp.c | 32 struct ksym *ks; in get_stack_print_output()
|
| /linux/scripts/gdb/linux/ |
| H A D | bpf.py | 18 def get_ksym_name(ksym): argument 19 name = ksym["name"].bytes 70 for ksym in list_ksyms(): 71 self.add(ksym) 209 def generate_debug_obj(ksym, prog): argument 210 name = get_ksym_name(ksym) 212 start = ksym["start"] 214 .array(int(ksym["end"]) - int(start))
|
| H A D | symbols.py | 218 def add_bpf_ksym(self, ksym): argument 219 addr = int(ksym["start"]) 220 name = bpf.get_ksym_name(ksym) 224 debug_obj = bpf.generate_debug_obj(ksym, self.bpf_progs.get(addr)) 236 def remove_bpf_ksym(self, ksym): argument 237 addr = int(ksym["start"]) 242 name = bpf.get_ksym_name(ksym)
|
| /linux/kernel/bpf/ |
| H A D | core.c | 134 INIT_LIST_HEAD_RCU(&fp->aux->ksym.lnode); in bpf_prog_alloc_no_stats() 559 prog->aux->ksym.start = (unsigned long) prog->bpf_func; in bpf_prog_ksym_set_addr() 560 prog->aux->ksym.end = prog->aux->ksym.start + prog->jited_len; in bpf_prog_ksym_set_addr() 566 char *sym = prog->aux->ksym.name; in bpf_prog_ksym_set_name() 614 const struct bpf_ksym *ksym; in bpf_tree_comp() local 616 ksym = container_of(n, struct bpf_ksym, tnode); in bpf_tree_comp() 618 if (val < ksym->start) in bpf_tree_comp() 624 if (val > ksym->end) in bpf_tree_comp() 639 void bpf_ksym_add(struct bpf_ksym *ksym) in bpf_ksym_add() argument 642 WARN_ON_ONCE(!list_empty(&ksym->lnode)); in bpf_ksym_add() [all …]
|
| H A D | trampoline.c | 155 void bpf_image_ksym_init(void *data, unsigned int size, struct bpf_ksym *ksym) in bpf_image_ksym_init() argument 157 ksym->start = (unsigned long) data; in bpf_image_ksym_init() 158 ksym->end = ksym->start + size; in bpf_image_ksym_init() 161 void bpf_image_ksym_add(struct bpf_ksym *ksym) in bpf_image_ksym_add() argument 163 bpf_ksym_add(ksym); in bpf_image_ksym_add() 164 perf_event_ksymbol(PERF_RECORD_KSYMBOL_TYPE_BPF, ksym->start, in bpf_image_ksym_add() 165 PAGE_SIZE, false, ksym->name); in bpf_image_ksym_add() 168 void bpf_image_ksym_del(struct bpf_ksym *ksym) in bpf_image_ksym_del() argument 170 bpf_ksym_del(ksym); in bpf_image_ksym_del() 171 perf_event_ksymbol(PERF_RECORD_KSYMBOL_TYPE_BPF, ksym->start, in bpf_image_ksym_del() [all …]
|
| H A D | bpf_struct_ops.c | 182 char ksym[KSYM_SYMBOL_LEN]; in prepare_arg_info() local 189 stub_fname = kallsyms_lookup((unsigned long)stub_func_addr, NULL, NULL, NULL, ksym); in prepare_arg_info() 645 struct bpf_ksym *ksym) in bpf_struct_ops_ksym_init() argument 647 snprintf(ksym->name, KSYM_NAME_LEN, "bpf__%s_%s", tname, mname); in bpf_struct_ops_ksym_init() 648 INIT_LIST_HEAD_RCU(&ksym->lnode); in bpf_struct_ops_ksym_init() 649 bpf_image_ksym_init(image, size, ksym); in bpf_struct_ops_ksym_init() 750 struct bpf_ksym *ksym; in bpf_struct_ops_map_update_elem() local 827 ksym = kzalloc_obj(*ksym, GFP_USER); in bpf_struct_ops_map_update_elem() 828 if (!ksym) { in bpf_struct_ops_map_update_elem() 832 *pksym++ = ksym; in bpf_struct_ops_map_update_elem() [all …]
|
| /linux/samples/hw_breakpoint/ |
| H A D | data_breakpoint.c | 27 module_param_string(ksym, ksym_name, KSYM_NAME_LEN, S_IRUGO); 28 MODULE_PARM_DESC(ksym, "Kernel symbol to monitor; this module will report any"
|
| /linux/kernel/ |
| H A D | kallsyms.c | 799 __bpf_md_ptr(struct kallsym_iter *, ksym); 814 ctx.ksym = m ? m->private : NULL; in ksym_prog_seq_show() 852 DEFINE_BPF_ITER_FUNC(ksym, struct bpf_iter_meta *meta, struct kallsym_iter *ksym) 866 { offsetof(struct bpf_iter__ksym, ksym),
|
| /linux/tools/sched_ext/include/scx/ |
| H A D | compat.h | 75 static inline bool __COMPAT_has_ksym(const char *ksym) in __COMPAT_has_ksym() argument 78 return btf__find_by_name(__COMPAT_vmlinux_btf, ksym) >= 0; in __COMPAT_has_ksym()
|
| /linux/tools/testing/vsock/ |
| H A D | util.c | 888 const char *ksym; in __get_transports() local 911 ksym = transport_ksyms[i]; in __get_transports() 912 match = strstr(buf, ksym); in __get_transports() 913 if (match && isspace(match[strlen(ksym)])) { in __get_transports()
|
| /linux/samples/bpf/ |
| H A D | spintest_user.c | 18 struct ksym *sym; in main()
|
| H A D | offwaketime_user.c | 22 struct ksym *sym; in print_ksym()
|
| H A D | sampleip_user.c | 91 struct ksym *sym; in print_ip_map()
|
| H A D | trace_event_user.c | 29 struct ksym *sym; in print_ksym()
|
| /linux/kernel/module/ |
| H A D | main.c | 1291 const struct kernel_symbol *ksym; in resolve_symbol_wait() local 1295 !IS_ERR(ksym = resolve_symbol(mod, info, name, owner)) in resolve_symbol_wait() 1296 || PTR_ERR(ksym) != -EBUSY, in resolve_symbol_wait() 1301 return ksym; in resolve_symbol_wait() 1520 const struct kernel_symbol *ksym; in simplify_symbols() local 1552 ksym = resolve_symbol_wait(mod, info, name); in simplify_symbols() 1554 if (ksym && !IS_ERR(ksym)) { in simplify_symbols() 1555 sym[i].st_value = kernel_symbol_value(ksym); in simplify_symbols() 1560 if (!ksym && in simplify_symbols() 1565 ret = PTR_ERR(ksym) ?: -ENOENT; in simplify_symbols()
|
| /linux/arch/arm/mach-imx/ |
| H A D | Makefile | 29 obj-y += ssi-fiq-ksym.o
|
| /linux/include/linux/ |
| H A D | bpf.h | 1322 struct bpf_ksym ksym; member 1386 struct bpf_ksym ksym; member 1503 .ksym = { \ 1505 .lnode = LIST_HEAD_INIT(_name.ksym.lnode), \ 1535 void bpf_image_ksym_init(void *data, unsigned int size, struct bpf_ksym *ksym); 1536 void bpf_image_ksym_add(struct bpf_ksym *ksym); 1537 void bpf_image_ksym_del(struct bpf_ksym *ksym); 1538 void bpf_ksym_add(struct bpf_ksym *ksym); 1539 void bpf_ksym_del(struct bpf_ksym *ksym); 1717 struct bpf_ksym ksym; member
|
| /linux/tools/lib/bpf/ |
| H A D | libbpf.c | 645 } ksym; member 3511 if (ext->type == EXT_KSYM && ext->ksym.type_id) in obj_needs_vmlinux_btf() 4354 &ext->ksym.type_id); in bpf_object__collect_externs() 6410 if (ext->ksym.type_id && ext->is_set) { /* typed ksyms */ in bpf_object__relocate_data() 6412 insn[0].imm = ext->ksym.kernel_btf_id; in bpf_object__relocate_data() 6413 insn[1].imm = ext->ksym.kernel_btf_obj_fd; in bpf_object__relocate_data() 6415 insn[0].imm = (__u32)ext->ksym.addr; in bpf_object__relocate_data() 6416 insn[1].imm = ext->ksym.addr >> 32; in bpf_object__relocate_data() 6424 insn[0].imm = ext->ksym.kernel_btf_id; in bpf_object__relocate_data() 6425 insn[0].off = ext->ksym.btf_fd_idx; in bpf_object__relocate_data() [all …]
|
| /linux/arch/x86/net/ |
| H A D | bpf_jit_comp.c | 1686 bpf_prog->aux->ksym.fp_start = prog - temp; in do_jit() 2746 bpf_prog->aux->ksym.fp_end = prog - temp; in do_jit() 3351 im->ksym.fp_start = prog - (u8 *)rw_image; in __arch_prepare_bpf_trampoline() 3500 im->ksym.fp_end = prog - (u8 *)rw_image; in __arch_prepare_bpf_trampoline()
|
| /linux/kernel/events/ |
| H A D | core.c | 10263 prog->aux->ksym.name); in perf_event_bpf_emit_ksymbols() 10272 subprog->aux->ksym.name); in perf_event_bpf_emit_ksymbols()
|