Lines Matching refs:ksym
129 INIT_LIST_HEAD_RCU(&fp->aux->ksym.lnode); in bpf_prog_alloc_no_stats()
583 prog->aux->ksym.start = (unsigned long) prog->bpf_func; in bpf_prog_ksym_set_addr()
584 prog->aux->ksym.end = prog->aux->ksym.start + prog->jited_len; in bpf_prog_ksym_set_addr()
590 char *sym = prog->aux->ksym.name; in bpf_prog_ksym_set_name()
638 const struct bpf_ksym *ksym; in bpf_tree_comp() local
640 ksym = container_of(n, struct bpf_ksym, tnode); in bpf_tree_comp()
642 if (val < ksym->start) in bpf_tree_comp()
648 if (val > ksym->end) in bpf_tree_comp()
663 void bpf_ksym_add(struct bpf_ksym *ksym) in bpf_ksym_add() argument
666 WARN_ON_ONCE(!list_empty(&ksym->lnode)); in bpf_ksym_add()
667 list_add_tail_rcu(&ksym->lnode, &bpf_kallsyms); in bpf_ksym_add()
668 latch_tree_insert(&ksym->tnode, &bpf_tree, &bpf_tree_ops); in bpf_ksym_add()
672 static void __bpf_ksym_del(struct bpf_ksym *ksym) in __bpf_ksym_del() argument
674 if (list_empty(&ksym->lnode)) in __bpf_ksym_del()
677 latch_tree_erase(&ksym->tnode, &bpf_tree, &bpf_tree_ops); in __bpf_ksym_del()
678 list_del_rcu(&ksym->lnode); in __bpf_ksym_del()
681 void bpf_ksym_del(struct bpf_ksym *ksym) in bpf_ksym_del() argument
684 __bpf_ksym_del(ksym); in bpf_ksym_del()
701 fp->aux->ksym.prog = true; in bpf_prog_kallsyms_add()
703 bpf_ksym_add(&fp->aux->ksym); in bpf_prog_kallsyms_add()
714 "__cfi_%s", fp->aux->ksym.name); in bpf_prog_kallsyms_add()
728 bpf_ksym_del(&fp->aux->ksym); in bpf_prog_kallsyms_del()
747 struct bpf_ksym *ksym; in __bpf_address_lookup() local
751 ksym = bpf_ksym_find(addr); in __bpf_address_lookup()
752 if (ksym) { in __bpf_address_lookup()
753 unsigned long symbol_start = ksym->start; in __bpf_address_lookup()
754 unsigned long symbol_end = ksym->end; in __bpf_address_lookup()
756 ret = strscpy(sym, ksym->name, KSYM_NAME_LEN); in __bpf_address_lookup()
781 struct bpf_ksym *ksym = bpf_ksym_find(addr); in bpf_prog_ksym_find() local
783 return ksym && ksym->prog ? in bpf_prog_ksym_find()
784 container_of(ksym, struct bpf_prog_aux, ksym)->prog : in bpf_prog_ksym_find()
809 struct bpf_ksym *ksym; in bpf_get_kallsym() local
817 list_for_each_entry_rcu(ksym, &bpf_kallsyms, lnode) { in bpf_get_kallsym()
821 strscpy(sym, ksym->name, KSYM_NAME_LEN); in bpf_get_kallsym()
823 *value = ksym->start; in bpf_get_kallsym()