Home
last modified time | relevance | path

Searched refs:progs (Results 1 – 7 of 7) sorted by relevance

/kernel/bpf/
Dcgroup.c287 for (atype = 0; atype < ARRAY_SIZE(cgrp->bpf.progs); atype++) { in cgroup_bpf_release()
288 struct hlist_head *progs = &cgrp->bpf.progs[atype]; in cgroup_bpf_release() local
292 hlist_for_each_entry_safe(pl, pltmp, progs, node) { in cgroup_bpf_release()
386 cnt = prog_list_length(&p->bpf.progs[atype]); in hierarchy_allows_attach()
406 struct bpf_prog_array *progs; in compute_effective_progs() local
414 cnt += prog_list_length(&p->bpf.progs[atype]); in compute_effective_progs()
418 progs = bpf_prog_array_alloc(cnt, GFP_KERNEL); in compute_effective_progs()
419 if (!progs) in compute_effective_progs()
429 hlist_for_each_entry(pl, &p->bpf.progs[atype], node) { in compute_effective_progs()
433 item = &progs->items[cnt]; in compute_effective_progs()
[all …]
Ddispatcher.c31 if (prog == d->progs[i].prog) in bpf_dispatcher_find_prog()
32 return &d->progs[i]; in bpf_dispatcher_find_prog()
100 if (d->progs[i].prog) in bpf_dispatcher_prepare()
101 *ipsp++ = (s64)(uintptr_t)d->progs[i].prog->bpf_func; in bpf_dispatcher_prepare()
Dnet_namespace.c332 attached = net->bpf.progs[type]; in netns_bpf_prog_attach()
353 net->bpf.progs[type] = prog; in netns_bpf_prog_attach()
374 attached = net->bpf.progs[type]; in __netns_bpf_prog_detach()
378 net->bpf.progs[type] = NULL; in __netns_bpf_prog_detach()
437 if (net->bpf.progs[type]) { in netns_bpf_link_attach()
551 if (net->bpf.progs[type]) in netns_bpf_pernet_pre_exit()
552 bpf_prog_put(net->bpf.progs[type]); in netns_bpf_pernet_pre_exit()
Doffload.c45 struct list_head progs; member
113 list_add_tail(&offload->offloads, &ondev->progs); in bpf_prog_offload_init()
604 INIT_LIST_HEAD(&ondev->progs); in bpf_offload_dev_netdev_register()
647 list_for_each_entry(offload, &ondev->progs, offloads) in bpf_offload_dev_netdev_unregister()
649 list_splice_init(&ondev->progs, &altdev->progs); in bpf_offload_dev_netdev_unregister()
655 list_for_each_entry_safe(offload, ptmp, &ondev->progs, offloads) in bpf_offload_dev_netdev_unregister()
661 WARN_ON(!list_empty(&ondev->progs)); in bpf_offload_dev_netdev_unregister()
Dcore.c2247 void bpf_prog_array_free(struct bpf_prog_array *progs) in bpf_prog_array_free() argument
2249 if (!progs || progs == &bpf_empty_prog_array.hdr) in bpf_prog_array_free()
2251 kfree_rcu(progs, rcu); in bpf_prog_array_free()
2256 struct bpf_prog_array *progs; in __bpf_prog_array_free_sleepable_cb() local
2258 progs = container_of(rcu, struct bpf_prog_array, rcu); in __bpf_prog_array_free_sleepable_cb()
2259 kfree_rcu(progs, rcu); in __bpf_prog_array_free_sleepable_cb()
2262 void bpf_prog_array_free_sleepable(struct bpf_prog_array *progs) in bpf_prog_array_free_sleepable() argument
2264 if (!progs || progs == &bpf_empty_prog_array.hdr) in bpf_prog_array_free_sleepable()
2266 call_rcu_tasks_trace(&progs->rcu, __bpf_prog_array_free_sleepable_cb); in bpf_prog_array_free_sleepable()
/kernel/bpf/preload/iterators/
Diterators.lskel.h16 } progs; member
28 int prog_fd = skel->progs.dump_bpf_map.prog_fd; in iterators_bpf__dump_bpf_map__attach()
39 int prog_fd = skel->progs.dump_bpf_prog.prog_fd; in iterators_bpf__dump_bpf_prog__attach()
69 skel_closenz(skel->progs.dump_bpf_map.prog_fd); in iterators_bpf__destroy()
70 skel_closenz(skel->progs.dump_bpf_prog.prog_fd); in iterators_bpf__destroy()
/kernel/trace/
Dbpf_trace.c2202 struct bpf_prog_array *progs; in perf_event_query_prog_array() local
2227 progs = bpf_event_rcu_dereference(event->tp_event->prog_array); in perf_event_query_prog_array()
2228 ret = bpf_prog_array_copy_info(progs, ids, ids_len, &prog_cnt); in perf_event_query_prog_array()