Symbol: ksym
arch/x86/net/bpf_jit_comp.c
1741
bpf_prog->aux->ksym.fp_start = prog - temp;
arch/x86/net/bpf_jit_comp.c
2881
bpf_prog->aux->ksym.fp_end = prog - temp;
arch/x86/net/bpf_jit_comp.c
3486
im->ksym.fp_start = prog - (u8 *)rw_image;
arch/x86/net/bpf_jit_comp.c
3635
im->ksym.fp_end = prog - (u8 *)rw_image;
include/linux/bpf.h
1371
struct bpf_ksym ksym;
include/linux/bpf.h
1438
struct bpf_ksym ksym;
include/linux/bpf.h
1562
.ksym = { \
include/linux/bpf.h
1564
.lnode = LIST_HEAD_INIT(_name.ksym.lnode), \
include/linux/bpf.h
1594
void bpf_image_ksym_init(void *data, unsigned int size, struct bpf_ksym *ksym);
include/linux/bpf.h
1595
void bpf_image_ksym_add(struct bpf_ksym *ksym);
include/linux/bpf.h
1596
void bpf_image_ksym_del(struct bpf_ksym *ksym);
include/linux/bpf.h
1597
void bpf_ksym_add(struct bpf_ksym *ksym);
include/linux/bpf.h
1598
void bpf_ksym_del(struct bpf_ksym *ksym);
include/linux/bpf.h
1807
struct bpf_ksym ksym;
include/linux/filter.h
1346
return list_empty(&fp->aux->ksym.lnode) ||
include/linux/filter.h
1347
fp->aux->ksym.lnode.prev == LIST_POISON2;
kernel/bpf/bpf_struct_ops.c
182
char ksym[KSYM_SYMBOL_LEN];
kernel/bpf/bpf_struct_ops.c
189
stub_fname = kallsyms_lookup((unsigned long)stub_func_addr, NULL, NULL, NULL, ksym);
kernel/bpf/bpf_struct_ops.c
645
struct bpf_ksym *ksym)
kernel/bpf/bpf_struct_ops.c
647
snprintf(ksym->name, KSYM_NAME_LEN, "bpf__%s_%s", tname, mname);
kernel/bpf/bpf_struct_ops.c
648
INIT_LIST_HEAD_RCU(&ksym->lnode);
kernel/bpf/bpf_struct_ops.c
649
bpf_image_ksym_init(image, size, ksym);
kernel/bpf/bpf_struct_ops.c
750
struct bpf_ksym *ksym;
kernel/bpf/bpf_struct_ops.c
828
ksym = kzalloc_obj(*ksym, GFP_USER);
kernel/bpf/bpf_struct_ops.c
829
if (!ksym) {
kernel/bpf/bpf_struct_ops.c
833
*pksym++ = ksym;
kernel/bpf/bpf_struct_ops.c
859
ksym);
kernel/bpf/core.c
134
INIT_LIST_HEAD_RCU(&fp->aux->ksym.lnode);
kernel/bpf/core.c
1344
if (prog->aux->ksym.prog)
kernel/bpf/core.c
1345
return prog->aux->ksym.name;
kernel/bpf/core.c
559
prog->aux->ksym.start = (unsigned long) prog->bpf_func;
kernel/bpf/core.c
560
prog->aux->ksym.end = prog->aux->ksym.start + prog->jited_len;
kernel/bpf/core.c
566
char *sym = prog->aux->ksym.name;
kernel/bpf/core.c
614
const struct bpf_ksym *ksym;
kernel/bpf/core.c
616
ksym = container_of(n, struct bpf_ksym, tnode);
kernel/bpf/core.c
618
if (val < ksym->start)
kernel/bpf/core.c
624
if (val > ksym->end)
kernel/bpf/core.c
639
void bpf_ksym_add(struct bpf_ksym *ksym)
kernel/bpf/core.c
642
WARN_ON_ONCE(!list_empty(&ksym->lnode));
kernel/bpf/core.c
643
list_add_tail_rcu(&ksym->lnode, &bpf_kallsyms);
kernel/bpf/core.c
644
latch_tree_insert(&ksym->tnode, &bpf_tree, &bpf_tree_ops);
kernel/bpf/core.c
648
static void __bpf_ksym_del(struct bpf_ksym *ksym)
kernel/bpf/core.c
650
if (list_empty(&ksym->lnode))
kernel/bpf/core.c
653
latch_tree_erase(&ksym->tnode, &bpf_tree, &bpf_tree_ops);
kernel/bpf/core.c
654
list_del_rcu(&ksym->lnode);
kernel/bpf/core.c
657
void bpf_ksym_del(struct bpf_ksym *ksym)
kernel/bpf/core.c
660
__bpf_ksym_del(ksym);
kernel/bpf/core.c
677
fp->aux->ksym.prog = true;
kernel/bpf/core.c
679
bpf_ksym_add(&fp->aux->ksym);
kernel/bpf/core.c
690
"__cfi_%s", fp->aux->ksym.name);
kernel/bpf/core.c
704
bpf_ksym_del(&fp->aux->ksym);
kernel/bpf/core.c
723
struct bpf_ksym *ksym;
kernel/bpf/core.c
727
ksym = bpf_ksym_find(addr);
kernel/bpf/core.c
728
if (ksym) {
kernel/bpf/core.c
729
unsigned long symbol_start = ksym->start;
kernel/bpf/core.c
730
unsigned long symbol_end = ksym->end;
kernel/bpf/core.c
732
ret = strscpy(sym, ksym->name, KSYM_NAME_LEN);
kernel/bpf/core.c
757
struct bpf_ksym *ksym;
kernel/bpf/core.c
760
ksym = bpf_ksym_find(addr);
kernel/bpf/core.c
762
return ksym && ksym->prog ?
kernel/bpf/core.c
763
container_of(ksym, struct bpf_prog_aux, ksym)->prog :
kernel/bpf/core.c
769
struct bpf_ksym *ksym;
kernel/bpf/core.c
774
ksym = bpf_ksym_find(ip);
kernel/bpf/core.c
775
if (!ksym || !ksym->fp_start || !ksym->fp_end)
kernel/bpf/core.c
778
offset = ip - ksym->start;
kernel/bpf/core.c
780
return offset >= ksym->fp_start && offset < ksym->fp_end;
kernel/bpf/core.c
804
struct bpf_ksym *ksym;
kernel/bpf/core.c
812
list_for_each_entry_rcu(ksym, &bpf_kallsyms, lnode) {
kernel/bpf/core.c
816
strscpy(sym, ksym->name, KSYM_NAME_LEN);
kernel/bpf/core.c
818
*value = ksym->start;
kernel/bpf/dispatcher.c
157
bpf_image_ksym_init(d->image, PAGE_SIZE, &d->ksym);
kernel/bpf/dispatcher.c
158
bpf_image_ksym_add(&d->ksym);
kernel/bpf/trampoline.c
197
void bpf_image_ksym_init(void *data, unsigned int size, struct bpf_ksym *ksym)
kernel/bpf/trampoline.c
199
ksym->start = (unsigned long) data;
kernel/bpf/trampoline.c
200
ksym->end = ksym->start + size;
kernel/bpf/trampoline.c
203
void bpf_image_ksym_add(struct bpf_ksym *ksym)
kernel/bpf/trampoline.c
205
bpf_ksym_add(ksym);
kernel/bpf/trampoline.c
206
perf_event_ksymbol(PERF_RECORD_KSYMBOL_TYPE_BPF, ksym->start,
kernel/bpf/trampoline.c
207
PAGE_SIZE, false, ksym->name);
kernel/bpf/trampoline.c
210
void bpf_image_ksym_del(struct bpf_ksym *ksym)
kernel/bpf/trampoline.c
212
bpf_ksym_del(ksym);
kernel/bpf/trampoline.c
213
perf_event_ksymbol(PERF_RECORD_KSYMBOL_TYPE_BPF, ksym->start,
kernel/bpf/trampoline.c
214
PAGE_SIZE, true, ksym->name);
kernel/bpf/trampoline.c
534
bpf_image_ksym_del(&im->ksym);
kernel/bpf/trampoline.c
634
struct bpf_ksym *ksym;
kernel/bpf/trampoline.c
656
ksym = &im->ksym;
kernel/bpf/trampoline.c
657
INIT_LIST_HEAD_RCU(&ksym->lnode);
kernel/bpf/trampoline.c
658
snprintf(ksym->name, KSYM_NAME_LEN, "bpf_trampoline_%llu", key);
kernel/bpf/trampoline.c
659
bpf_image_ksym_init(image, size, ksym);
kernel/bpf/trampoline.c
660
bpf_image_ksym_add(ksym);
kernel/events/core.c
10332
prog->aux->ksym.name);
kernel/events/core.c
10341
subprog->aux->ksym.name);
kernel/kallsyms.c
799
__bpf_md_ptr(struct kallsym_iter *, ksym);
kernel/kallsyms.c
814
ctx.ksym = m ? m->private : NULL;
kernel/kallsyms.c
852
DEFINE_BPF_ITER_FUNC(ksym, struct bpf_iter_meta *meta, struct kallsym_iter *ksym)
kernel/kallsyms.c
866
{ offsetof(struct bpf_iter__ksym, ksym),
kernel/module/main.c
1320
const struct kernel_symbol *ksym;
kernel/module/main.c
1324
!IS_ERR(ksym = resolve_symbol(mod, info, name, owner))
kernel/module/main.c
1325
|| PTR_ERR(ksym) != -EBUSY,
kernel/module/main.c
1330
return ksym;
kernel/module/main.c
1537
const struct kernel_symbol *ksym;
kernel/module/main.c
1569
ksym = resolve_symbol_wait(mod, info, name);
kernel/module/main.c
1571
if (ksym && !IS_ERR(ksym)) {
kernel/module/main.c
1572
sym[i].st_value = kernel_symbol_value(ksym);
kernel/module/main.c
1577
if (!ksym &&
kernel/module/main.c
1582
ret = PTR_ERR(ksym) ?: -ENOENT;
samples/bpf/offwaketime_user.c
22
struct ksym *sym;
samples/bpf/sampleip_user.c
91
struct ksym *sym;
samples/bpf/spintest_user.c
18
struct ksym *sym;
samples/bpf/trace_event_user.c
29
struct ksym *sym;
samples/hw_breakpoint/data_breakpoint.c
27
module_param_string(ksym, ksym_name, KSYM_NAME_LEN, S_IRUGO);
samples/hw_breakpoint/data_breakpoint.c
28
MODULE_PARM_DESC(ksym, "Kernel symbol to monitor; this module will report any"
tools/lib/bpf/libbpf.c
3574
if (ext->type == EXT_KSYM && ext->ksym.type_id)
tools/lib/bpf/libbpf.c
4405
&ext->ksym.type_id);
tools/lib/bpf/libbpf.c
6470
if (ext->ksym.type_id && ext->is_set) { /* typed ksyms */
tools/lib/bpf/libbpf.c
6472
insn[0].imm = ext->ksym.kernel_btf_id;
tools/lib/bpf/libbpf.c
6473
insn[1].imm = ext->ksym.kernel_btf_obj_fd;
tools/lib/bpf/libbpf.c
6475
insn[0].imm = (__u32)ext->ksym.addr;
tools/lib/bpf/libbpf.c
6476
insn[1].imm = ext->ksym.addr >> 32;
tools/lib/bpf/libbpf.c
6484
insn[0].imm = ext->ksym.kernel_btf_id;
tools/lib/bpf/libbpf.c
6485
insn[0].off = ext->ksym.btf_fd_idx;
tools/lib/bpf/libbpf.c
650
} ksym;
tools/lib/bpf/libbpf.c
8320
ext->is_weak, !ext->ksym.type_id,
tools/lib/bpf/libbpf.c
8652
if (ext->is_set && ext->ksym.addr != sym_addr) {
tools/lib/bpf/libbpf.c
8654
sym_name, ext->ksym.addr, sym_addr);
tools/lib/bpf/libbpf.c
8659
ext->ksym.addr = sym_addr;
tools/lib/bpf/libbpf.c
8724
local_type_id = ext->ksym.type_id;
tools/lib/bpf/libbpf.c
8749
ext->ksym.kernel_btf_obj_fd = mod_btf ? mod_btf->fd : 0;
tools/lib/bpf/libbpf.c
8750
ext->ksym.kernel_btf_id = id;
tools/lib/bpf/libbpf.c
8766
local_func_proto_id = ext->ksym.type_id;
tools/lib/bpf/libbpf.c
8815
ext->ksym.kernel_btf_id = kfunc_id;
tools/lib/bpf/libbpf.c
8816
ext->ksym.btf_fd_idx = mod_btf ? mod_btf->fd_array_idx : 0;
tools/lib/bpf/libbpf.c
8822
ext->ksym.kernel_btf_obj_fd = mod_btf ? mod_btf->fd : 0;
tools/lib/bpf/libbpf.c
8837
if (ext->type != EXT_KSYM || !ext->ksym.type_id)
tools/lib/bpf/libbpf.c
8842
ext->ksym.kernel_btf_obj_fd = 0;
tools/lib/bpf/libbpf.c
8843
ext->ksym.kernel_btf_id = 0;
tools/lib/bpf/libbpf.c
8876
if (ext->ksym.type_id)
tools/sched_ext/include/scx/compat.h
76
static inline bool __COMPAT_has_ksym(const char *ksym)
tools/sched_ext/include/scx/compat.h
79
return btf__find_by_name(__COMPAT_vmlinux_btf, ksym) >= 0;
tools/testing/selftests/bpf/prog_tests/get_stack_raw_tp.c
32
struct ksym *ks;
tools/testing/selftests/bpf/prog_tests/stacktrace_ips.c
34
struct ksym *ksym;
tools/testing/selftests/bpf/prog_tests/stacktrace_ips.c
37
ksym = ksym_search_local(ksyms, ips[i]);
tools/testing/selftests/bpf/prog_tests/stacktrace_ips.c
38
if (!ASSERT_OK_PTR(ksym, "ksym_search_local"))
tools/testing/selftests/bpf/prog_tests/stacktrace_ips.c
40
ASSERT_EQ(ksym->addr, val, "stack_cmp");
tools/testing/selftests/bpf/progs/bpf_iter_ksym.c
32
struct kallsym_iter *iter = ctx->ksym;
tools/testing/selftests/bpf/trace_helpers.c
109
return ((struct ksym *)p1)->addr - ((struct ksym *)p2)->addr;
tools/testing/selftests/bpf/trace_helpers.c
131
struct ksym *ksym_search_local(struct ksyms *ksyms, long key)
tools/testing/selftests/bpf/trace_helpers.c
161
struct ksym *search_kallsyms_custom_local(struct ksyms *ksyms, const void *p,
tools/testing/selftests/bpf/trace_helpers.c
165
struct ksym *ks;
tools/testing/selftests/bpf/trace_helpers.c
183
struct ksym *ksym_search(long key)
tools/testing/selftests/bpf/trace_helpers.c
602
return compare_name(((const struct ksym *)p1)->name, ((const struct ksym *)p2)->name);
tools/testing/selftests/bpf/trace_helpers.c
605
static int search_kallsyms_compare(const void *p1, const struct ksym *p2)
tools/testing/selftests/bpf/trace_helpers.c
616
struct ksym *ks;
tools/testing/selftests/bpf/trace_helpers.c
90
sizeof(struct ksym), ksyms->sym_cnt + 1);
tools/testing/selftests/bpf/trace_helpers.c
98
qsort(ksyms->syms, ksyms->sym_cnt, sizeof(struct ksym), cmp_cb);
tools/testing/selftests/bpf/trace_helpers.h
28
struct ksym *syms;
tools/testing/selftests/bpf/trace_helpers.h
36
typedef int (*ksym_search_cmp_t)(const void *p1, const struct ksym *p2);
tools/testing/selftests/bpf/trace_helpers.h
39
struct ksym *ksym_search(long key);
tools/testing/selftests/bpf/trace_helpers.h
43
struct ksym *ksym_search_local(struct ksyms *ksyms, long key);
tools/testing/selftests/bpf/trace_helpers.h
48
struct ksym *search_kallsyms_custom_local(struct ksyms *ksyms, const void *p1,
tools/testing/vsock/util.c
907
const char *ksym;
tools/testing/vsock/util.c
930
ksym = transport_ksyms[i];
tools/testing/vsock/util.c
931
match = strstr(buf, ksym);
tools/testing/vsock/util.c
932
if (match && isspace(match[strlen(ksym)])) {