Home
last modified time | relevance | path

Searched refs:prog (Results 1 – 25 of 411) sorted by relevance

12345678910>>...17

/linux/net/sched/
H A Dcls_bpf.c87 struct cls_bpf_prog *prog; in cls_bpf_classify() local
90 list_for_each_entry_rcu(prog, &head->plist, link) { in cls_bpf_classify()
93 qdisc_skb_cb(skb)->tc_classid = prog->res.classid; in cls_bpf_classify()
95 if (tc_skip_sw(prog->gen_flags)) { in cls_bpf_classify()
96 filter_res = prog->exts_integrated ? TC_ACT_UNSPEC : 0; in cls_bpf_classify()
100 filter_res = bpf_prog_run_data_pointers(prog->filter, skb); in cls_bpf_classify()
103 filter_res = bpf_prog_run_data_pointers(prog->filter, skb); in cls_bpf_classify()
108 if (prog->exts_integrated) { in cls_bpf_classify()
110 res->classid = TC_H_MAJ(prog->res.classid) | in cls_bpf_classify()
125 *res = prog->res; in cls_bpf_classify()
[all …]
H A Dact_bpf.c40 struct tcf_bpf *prog = to_bpf(act); in tcf_bpf_act() local
44 tcf_lastuse_update(&prog->tcf_tm); in tcf_bpf_act()
45 bstats_update(this_cpu_ptr(prog->common.cpu_bstats), skb); in tcf_bpf_act()
47 filter = rcu_dereference(prog->filter); in tcf_bpf_act()
79 qstats_drop_inc(this_cpu_ptr(prog->common.cpu_qstats)); in tcf_bpf_act()
82 action = prog->tcf_action; in tcf_bpf_act()
92 static bool tcf_bpf_is_ebpf(const struct tcf_bpf *prog) in tcf_bpf_is_ebpf() argument
94 return !prog->bpf_ops; in tcf_bpf_is_ebpf()
97 static int tcf_bpf_dump_bpf_info(const struct tcf_bpf *prog, in tcf_bpf_dump_bpf_info() argument
102 if (nla_put_u16(skb, TCA_ACT_BPF_OPS_LEN, prog->bpf_num_ops)) in tcf_bpf_dump_bpf_info()
[all …]
/linux/tools/testing/selftests/bpf/prog_tests/
H A Dexceptions.c94 struct bpf_program *prog = NULL; \ in test_exceptions_success()
99 ASSERT_OK_PTR(bpf_program__name(prog), bpf_program__name(prog)); \ in test_exceptions_success()
112 if (!ASSERT_ERR_PTR(link = bpf_program__attach(prog), "attach err")) \ in test_exceptions_success()
115 if (!ASSERT_OK_PTR(link = bpf_program__attach(prog), "attach ok")) \ in test_exceptions_success()
124 prog = eskel->progs.pfentry; in test_exceptions_success()
125 bpf_program__set_autoload(prog, true); in test_exceptions_success()
126 if (!ASSERT_OK(bpf_program__set_attach_target(prog, in test_exceptions_success()
134 prog = eskel->progs.throwing_fentry; in test_exceptions_success()
135 bpf_program__set_autoload(prog, true); in test_exceptions_success()
136 if (!ASSERT_OK(bpf_program__set_attach_target(prog, in test_exceptions_success()
[all …]
H A Dtailcalls.c20 struct bpf_program *prog; in test_tailcall_1() local
35 prog = bpf_object__find_program_by_name(obj, "entry"); in test_tailcall_1()
36 if (CHECK_FAIL(!prog)) in test_tailcall_1()
39 main_fd = bpf_program__fd(prog); in test_tailcall_1()
54 prog = bpf_object__find_program_by_name(obj, prog_name); in test_tailcall_1()
55 if (CHECK_FAIL(!prog)) in test_tailcall_1()
58 prog_fd = bpf_program__fd(prog); in test_tailcall_1()
84 prog = bpf_object__find_program_by_name(obj, prog_name); in test_tailcall_1()
85 if (CHECK_FAIL(!prog)) in test_tailcall_1()
88 prog_fd = bpf_program__fd(prog); in test_tailcall_1()
[all …]
H A Dtrampoline_count.c13 struct bpf_program *prog; in load_prog() local
26 prog = bpf_object__find_program_by_name(obj, name); in load_prog()
27 if (!ASSERT_OK_PTR(prog, "obj_find_prog")) in load_prog()
30 return prog; in load_prog()
39 struct bpf_program *prog; in serial_test_trampoline_count() local
53 prog = load_prog(file, progs[i % ARRAY_SIZE(progs)], &inst[i]); in serial_test_trampoline_count()
54 if (!prog) in serial_test_trampoline_count()
57 link = bpf_program__attach(prog); in serial_test_trampoline_count()
65 prog = load_prog(file, "fmod_ret_test", &inst[i]); in serial_test_trampoline_count()
66 if (!prog) in serial_test_trampoline_count()
[all …]
H A Dtrace_ext.c24 struct bpf_program *prog; in test_trace_ext() local
42 prog = skel_pkt->progs.test_pkt_md_access; in test_trace_ext()
43 pkt_fd = bpf_program__fd(prog); in test_trace_ext()
51 prog = skel_ext->progs.test_pkt_md_access_new; in test_trace_ext()
52 bpf_program__set_attach_target(prog, pkt_fd, "test_pkt_md_access"); in test_trace_ext()
66 prog = skel_ext->progs.test_pkt_md_access_new; in test_trace_ext()
67 ext_fd = bpf_program__fd(prog); in test_trace_ext()
75 prog = skel_trace->progs.fentry; in test_trace_ext()
76 bpf_program__set_attach_target(prog, ext_fd, "test_pkt_md_access_new"); in test_trace_ext()
79 prog = skel_trace->progs.fexit; in test_trace_ext()
[all …]
H A Dfexit_bpf2bpf.c66 struct bpf_program **prog = NULL, *p; in test_fexit_bpf2bpf_common() local
93 prog = calloc(sizeof(struct bpf_program *), prog_cnt); in test_fexit_bpf2bpf_common()
94 if (!ASSERT_OK_PTR(prog, "prog_ptr")) in test_fexit_bpf2bpf_common()
122 prog[i] = NULL; in test_fexit_bpf2bpf_common()
126 prog[i] = pos; in test_fexit_bpf2bpf_common()
130 if (!ASSERT_OK_PTR(prog[i], prog_name[i])) in test_fexit_bpf2bpf_common()
133 link[i] = bpf_program__attach_trace(prog[i]); in test_fexit_bpf2bpf_common()
143 bpf_program__expected_attach_type(prog[i]), in test_fexit_bpf2bpf_common()
171 free(prog); in test_fexit_bpf2bpf_common()
233 struct bpf_program *prog = NULL; in test_second_attach() local
[all …]
/linux/arch/parisc/net/
H A Dbpf_jit_core.c18 const struct bpf_prog *prog = ctx->prog; in build_body() local
22 for (i = 0; i < prog->len; i++) { in build_body()
23 const struct bpf_insn *insn = &prog->insnsi[i]; in build_body()
44 struct bpf_prog *bpf_int_jit_compile(struct bpf_prog *prog) in bpf_int_jit_compile() argument
48 struct bpf_prog *tmp, *orig_prog = prog; in bpf_int_jit_compile()
53 if (!prog->jit_requested) in bpf_int_jit_compile()
56 tmp = bpf_jit_blind_constants(prog); in bpf_int_jit_compile()
59 if (tmp != prog) { in bpf_int_jit_compile()
61 prog = tmp; in bpf_int_jit_compile()
64 jit_data = prog->aux->jit_data; in bpf_int_jit_compile()
[all …]
/linux/drivers/clk/at91/
H A Dclk-programmable.c35 struct clk_programmable *prog = to_clk_programmable(hw); in clk_programmable_recalc_rate() local
36 const struct clk_programmable_layout *layout = prog->layout; in clk_programmable_recalc_rate()
40 regmap_read(prog->regmap, AT91_PMC_PCKR(prog->id), &pckr); in clk_programmable_recalc_rate()
53 struct clk_programmable *prog = to_clk_programmable(hw); in clk_programmable_determine_rate() local
54 const struct clk_programmable_layout *layout = prog->layout; in clk_programmable_determine_rate()
105 struct clk_programmable *prog = to_clk_programmable(hw); in clk_programmable_set_parent() local
106 const struct clk_programmable_layout *layout = prog->layout; in clk_programmable_set_parent()
113 if (prog->mux_table) in clk_programmable_set_parent()
114 pckr = clk_mux_index_to_val(prog->mux_table, 0, index); in clk_programmable_set_parent()
123 regmap_update_bits(prog->regmap, AT91_PMC_PCKR(prog->id), mask, pckr); in clk_programmable_set_parent()
[all …]
/linux/tools/workqueue/
H A Dwq_dump.py95 worker_pool_idr = prog['worker_pool_idr']
96 workqueues = prog['workqueues']
97 wq_unbound_cpumask = prog['wq_unbound_cpumask']
98 wq_pod_types = prog['wq_pod_types']
99 wq_affn_dfl = prog['wq_affn_dfl']
100 wq_affn_names = prog['wq_affn_names']
102 WQ_BH = prog['WQ_BH']
103 WQ_UNBOUND = prog['WQ_UNBOUND']
104 WQ_ORDERED = prog['__WQ_ORDERED']
105 WQ_MEM_RECLAIM = prog['WQ_MEM_RECLAIM']
[all …]
H A Dwq_monitor.py54 workqueues = prog['workqueues']
56 WQ_UNBOUND = prog['WQ_UNBOUND']
57 WQ_MEM_RECLAIM = prog['WQ_MEM_RECLAIM']
59 PWQ_STAT_STARTED = prog['PWQ_STAT_STARTED'] # work items started execution
60 PWQ_STAT_COMPLETED = prog['PWQ_STAT_COMPLETED'] # work items completed execution
61 PWQ_STAT_CPU_TIME = prog['PWQ_STAT_CPU_TIME'] # total CPU time consumed
62 PWQ_STAT_CPU_INTENSIVE = prog['PWQ_STAT_CPU_INTENSIVE'] # wq_cpu_intensive_thresh_us violations
63 PWQ_STAT_CM_WAKEUP = prog['PWQ_STAT_CM_WAKEUP'] # concurrency-management worker wakeups
64 PWQ_STAT_REPATRIATED = prog['PWQ_STAT_REPATRIATED'] # unbound workers brought back into scope
65 PWQ_STAT_MAYDAY = prog['PWQ_STAT_MAYDAY'] # maydays to rescuer
[all …]
/linux/kernel/bpf/
H A Dmprog.c20 if (type && link->prog->type != type) { in bpf_mprog_link()
26 tuple->prog = link->prog; in bpf_mprog_link()
34 struct bpf_prog *prog = ERR_PTR(-EINVAL); in bpf_mprog_prog() local
38 prog = bpf_prog_by_id(id_or_fd); in bpf_mprog_prog()
40 prog = bpf_prog_get(id_or_fd); in bpf_mprog_prog()
41 if (IS_ERR(prog)) in bpf_mprog_prog()
42 return PTR_ERR(prog); in bpf_mprog_prog()
43 if (type && prog->type != type) { in bpf_mprog_prog()
44 bpf_prog_put(prog); in bpf_mprog_prog()
49 tuple->prog = prog; in bpf_mprog_prog()
[all …]
H A Dsyscall.c2285 static int find_prog_type(enum bpf_prog_type type, struct bpf_prog *prog) in find_prog_type() argument
2296 if (!bpf_prog_is_offloaded(prog->aux)) in find_prog_type()
2297 prog->aux->ops = ops; in find_prog_type()
2299 prog->aux->ops = &bpf_offload_prog_ops; in find_prog_type()
2300 prog->type = type; in find_prog_type()
2315 static void bpf_audit_prog(const struct bpf_prog *prog, unsigned int op) in bpf_audit_prog() argument
2330 prog->aux->id, bpf_audit_str[op]); in bpf_audit_prog()
2334 static int bpf_prog_alloc_id(struct bpf_prog *prog) in bpf_prog_alloc_id() argument
2340 id = idr_alloc_cyclic(&prog_idr, prog, 1, INT_MAX, GFP_ATOMIC); in bpf_prog_alloc_id()
2342 prog->aux->id = id; in bpf_prog_alloc_id()
[all …]
H A Dtrampoline.c107 bool bpf_prog_has_trampoline(const struct bpf_prog *prog) in bpf_prog_has_trampoline() argument
109 enum bpf_attach_type eatype = prog->expected_attach_type; in bpf_prog_has_trampoline()
110 enum bpf_prog_type ptype = prog->type; in bpf_prog_has_trampoline()
273 *ip_arg |= link->link.prog->call_get_func_ip; in bpf_trampoline_get_progs()
553 static enum bpf_tramp_prog_type bpf_attach_type_to_tramp(struct bpf_prog *prog) in bpf_attach_type_to_tramp() argument
555 switch (prog->expected_attach_type) { in bpf_attach_type_to_tramp()
563 if (!prog->aux->attach_func_proto->type) in bpf_attach_type_to_tramp()
602 kind = bpf_attach_type_to_tramp(link->link.prog); in __bpf_trampoline_link_prog()
619 tr->extension_prog = link->link.prog; in __bpf_trampoline_link_prog()
622 link->link.prog->bpf_func); in __bpf_trampoline_link_prog()
[all …]
H A Dcore.c125 fp->aux->prog = fp; in bpf_prog_alloc_no_stats()
150 struct bpf_prog *prog; in bpf_prog_alloc() local
153 prog = bpf_prog_alloc_no_stats(size, gfp_extra_flags); in bpf_prog_alloc()
154 if (!prog) in bpf_prog_alloc()
157 prog->stats = alloc_percpu_gfp(struct bpf_prog_stats, gfp_flags); in bpf_prog_alloc()
158 if (!prog->stats) { in bpf_prog_alloc()
159 free_percpu(prog->active); in bpf_prog_alloc()
160 kfree(prog->aux); in bpf_prog_alloc()
161 vfree(prog); in bpf_prog_alloc()
168 pstats = per_cpu_ptr(prog in bpf_prog_alloc()
175 bpf_prog_alloc_jited_linfo(struct bpf_prog * prog) bpf_prog_alloc_jited_linfo() argument
189 bpf_prog_jit_attempt_done(struct bpf_prog * prog) bpf_prog_jit_attempt_done() argument
225 bpf_prog_fill_jited_linfo(struct bpf_prog * prog,const u32 * insn_to_jit_off) bpf_prog_fill_jited_linfo() argument
384 bpf_adj_branches(struct bpf_prog * prog,u32 pos,s32 end_old,s32 end_new,const bool probe_pass) bpf_adj_branches() argument
431 bpf_adj_linfo(struct bpf_prog * prog,u32 off,u32 delta) bpf_adj_linfo() argument
451 bpf_patch_insn_single(struct bpf_prog * prog,u32 off,const struct bpf_insn * patch,u32 len) bpf_patch_insn_single() argument
512 bpf_remove_insns(struct bpf_prog * prog,u32 off,u32 cnt) bpf_remove_insns() argument
551 bpf_prog_ksym_set_addr(struct bpf_prog * prog) bpf_prog_ksym_set_addr() argument
560 bpf_prog_ksym_set_name(struct bpf_prog * prog) bpf_prog_ksym_set_name() argument
766 struct bpf_prog *prog; search_bpf_extables() local
809 bpf_jit_add_poke_descriptor(struct bpf_prog * prog,struct bpf_jit_poke_descriptor * poke) bpf_jit_add_poke_descriptor() argument
1228 bpf_jit_get_func_addr(const struct bpf_prog * prog,const struct bpf_insn * insn,bool extra_pass,u64 * func_addr,bool * func_addr_fixed) bpf_jit_get_func_addr() argument
1268 bpf_jit_get_prog_name(struct bpf_prog * prog) bpf_jit_get_prog_name() argument
1453 bpf_jit_blind_constants(struct bpf_prog * prog) bpf_jit_blind_constants() argument
2014 struct bpf_prog *prog; ___bpf_prog_run() local
2540 struct bpf_prog prog; global() member
2707 bpf_prog_array_update_at(struct bpf_prog_array * array,int index,struct bpf_prog * prog) bpf_prog_array_update_at() argument
3017 bpf_int_jit_compile(struct bpf_prog * prog) bpf_int_jit_compile() argument
3025 bpf_jit_compile(struct bpf_prog * prog) bpf_jit_compile() argument
3176 struct bpf_prog *prog; bpf_prog_report_may_goto_violation() local
3241 bpf_prog_get_file_line(struct bpf_prog * prog,unsigned long ip,const char ** filep,const char ** linep,int * nump) bpf_prog_get_file_line() argument
3287 struct bpf_prog *prog; global() member
3293 struct bpf_prog *prog; find_from_stack_cb() local
[all...]
H A Doffload.c109 static void __bpf_prog_offload_destroy(struct bpf_prog *prog) in __bpf_prog_offload_destroy() argument
111 struct bpf_prog_offload *offload = prog->aux->offload; in __bpf_prog_offload_destroy()
114 offload->offdev->ops->destroy(prog); in __bpf_prog_offload_destroy()
118 prog->aux->offload = NULL; in __bpf_prog_offload_destroy()
179 __bpf_prog_offload_destroy(offload->prog); in __bpf_offload_dev_netdev_unregister()
189 static int __bpf_prog_dev_bound_init(struct bpf_prog *prog, struct net_device *netdev) in __bpf_prog_dev_bound_init() argument
199 offload->prog = prog; in __bpf_prog_dev_bound_init()
206 if (bpf_prog_is_offloaded(prog->aux) && (!ondev || !ondev->offdev)) { in __bpf_prog_dev_bound_init()
220 prog->aux->offload = offload; in __bpf_prog_dev_bound_init()
229 int bpf_prog_dev_bound_init(struct bpf_prog *prog, union bpf_attr *attr) in bpf_prog_dev_bound_init() argument
[all …]
H A Dprog_iter.c16 struct bpf_prog *prog; in bpf_prog_seq_start() local
18 prog = bpf_prog_get_curr_or_next(&info->prog_id); in bpf_prog_seq_start()
19 if (!prog) in bpf_prog_seq_start()
24 return prog; in bpf_prog_seq_start()
39 __bpf_md_ptr(struct bpf_prog *, prog);
42 DEFINE_BPF_ITER_FUNC(bpf_prog, struct bpf_iter_meta *meta, struct bpf_prog *prog) in DEFINE_BPF_ITER_FUNC() argument
48 struct bpf_prog *prog; in DEFINE_BPF_ITER_FUNC() local
52 ctx.prog = v; in DEFINE_BPF_ITER_FUNC()
54 prog = bpf_iter_get_info(&meta, in_stop); in DEFINE_BPF_ITER_FUNC()
55 if (prog) in DEFINE_BPF_ITER_FUNC()
[all …]
H A Dbpf_lsm.c90 void bpf_lsm_find_cgroup_shim(const struct bpf_prog *prog, in BTF_SET_END()
95 if (btf_type_vlen(prog->aux->attach_func_proto) < 1 || in BTF_SET_END()
97 prog->aux->attach_btf_id)) { in BTF_SET_END()
103 args = btf_params(prog->aux->attach_func_proto); in BTF_SET_END()
116 const struct bpf_prog *prog) in bpf_lsm_verify_prog()
118 u32 btf_id = prog->aux->attach_btf_id; in bpf_lsm_verify_prog()
119 const char *func_name = prog->aux->attach_func_name; in bpf_lsm_verify_prog()
121 if (!prog->gpl_compatible) { in bpf_lsm_verify_prog()
170 static bool bpf_ima_inode_hash_allowed(const struct bpf_prog *prog) in bpf_ima_inode_hash_allowed()
172 return bpf_lsm_is_sleepable_hook(prog in bpf_ima_inode_hash_allowed()
115 bpf_lsm_verify_prog(struct bpf_verifier_log * vlog,const struct bpf_prog * prog) bpf_lsm_verify_prog() argument
169 bpf_ima_inode_hash_allowed(const struct bpf_prog * prog) bpf_ima_inode_hash_allowed() argument
223 bpf_lsm_func_proto(enum bpf_func_id func_id,const struct bpf_prog * prog) bpf_lsm_func_proto() argument
401 bpf_lsm_is_trusted(const struct bpf_prog * prog) bpf_lsm_is_trusted() argument
[all...]
/linux/drivers/net/hyperv/
H A Dnetvsc_bpf.c31 struct bpf_prog *prog; in netvsc_run_xdp() local
38 prog = rcu_dereference(nvchan->bpf_prog); in netvsc_run_xdp()
40 if (!prog) in netvsc_run_xdp()
61 act = bpf_prog_run_xdp(prog, xdp); in netvsc_run_xdp()
73 if (!xdp_do_redirect(ndev, xdp, prog)) { in netvsc_run_xdp()
95 trace_xdp_exception(ndev, prog, act); in netvsc_run_xdp()
99 bpf_warn_invalid_xdp_action(ndev, prog, act); in netvsc_run_xdp()
124 int netvsc_xdp_set(struct net_device *dev, struct bpf_prog *prog, in netvsc_xdp_set() argument
133 if (!old_prog && !prog) in netvsc_xdp_set()
137 if (prog && buf_max > PAGE_SIZE) { in netvsc_xdp_set()
[all …]
/linux/drivers/net/netdevsim/
H A Dbpf.c31 struct bpf_prog *prog; member
68 state = env->prog->aux->offload->dev_priv; in nsim_bpf_verify_insn()
72 if (insn_idx == env->prog->len - 1) { in nsim_bpf_verify_insn()
89 return ns->xdp_hw.prog; in nsim_xdp_offload_active()
92 static void nsim_prog_set_loaded(struct bpf_prog *prog, bool loaded) in nsim_prog_set_loaded() argument
96 if (!prog || !bpf_prog_is_offloaded(prog->aux)) in nsim_prog_set_loaded()
99 state = prog->aux->offload->dev_priv; in nsim_prog_set_loaded()
104 nsim_bpf_offload(struct netdevsim *ns, struct bpf_prog *prog, bool oldprog) in nsim_bpf_offload() argument
111 ns->bpf_offloaded = prog; in nsim_bpf_offload()
112 ns->bpf_offloaded_id = prog ? prog->aux->id : 0; in nsim_bpf_offload()
[all …]
/linux/arch/x86/net/
H A Dbpf_jit_comp32.c65 do { prog = emit_code(prog, bytes, len); cnt += len; } while (0)
209 u8 *prog = *pprog; in emit_ia32_mov_i() local
230 *pprog = prog; in emit_ia32_mov_i()
237 u8 *prog = *pprog; in emit_ia32_mov_r() local
251 *pprog = prog; in emit_ia32_mov_r()
288 u8 *prog = *pprog; in emit_ia32_mul_r() local
314 *pprog = prog; in emit_ia32_mul_r()
321 u8 *prog = *pprog; in emit_ia32_to_le_r64() local
362 *pprog = prog; in emit_ia32_to_le_r64()
369 u8 *prog = *pprog; in emit_ia32_to_be_r64() local
[all …]
/linux/drivers/net/ethernet/netronome/nfp/bpf/
H A Doffload.c112 struct bpf_prog *prog) in nfp_map_ptrs_record() argument
116 mutex_lock(&prog->aux->used_maps_mutex); in nfp_map_ptrs_record()
120 for (i = 0; i < prog->aux->used_map_cnt; i++) in nfp_map_ptrs_record()
121 if (bpf_map_offload_neutral(prog->aux->used_maps[i])) in nfp_map_ptrs_record()
134 for (i = 0; i < prog->aux->used_map_cnt; i++) in nfp_map_ptrs_record()
135 if (bpf_map_offload_neutral(prog->aux->used_maps[i])) { in nfp_map_ptrs_record()
137 prog->aux->used_maps[i]); in nfp_map_ptrs_record()
146 mutex_unlock(&prog->aux->used_maps_mutex); in nfp_map_ptrs_record()
151 nfp_prog_prepare(struct nfp_prog *nfp_prog, const struct bpf_insn *prog, in nfp_prog_prepare() argument
162 meta->insn = prog[i]; in nfp_prog_prepare()
[all …]
/linux/drivers/media/rc/
H A Dbpf-lirc.c83 lirc_mode2_func_proto(enum bpf_func_id func_id, const struct bpf_prog *prog) in lirc_mode2_func_proto() argument
113 if (bpf_token_capable(prog->aux->token, CAP_PERFMON)) in lirc_mode2_func_proto()
123 const struct bpf_prog *prog, in lirc_mode2_is_valid_access() argument
137 static int lirc_bpf_attach(struct rc_dev *rcdev, struct bpf_prog *prog) in lirc_bpf_attach() argument
163 ret = bpf_prog_array_copy(old_array, NULL, prog, 0, &new_array); in lirc_bpf_attach()
175 static int lirc_bpf_detach(struct rc_dev *rcdev, struct bpf_prog *prog) in lirc_bpf_detach() argument
196 ret = bpf_prog_array_copy(old_array, prog, NULL, 0, &new_array); in lirc_bpf_detach()
207 bpf_prog_put(prog); in lirc_bpf_detach()
242 for (item = array->items; item->prog; item++) in lirc_bpf_free()
243 bpf_prog_put(item->prog); in lirc_bpf_free()
[all …]
/linux/samples/bpf/
H A Dtracex5_user.c27 struct sock_fprog prog = { in install_accept_all_seccomp() local
31 if (prctl(PR_SET_SECCOMP, 2, &prog)) in install_accept_all_seccomp()
38 struct bpf_program *prog; in main() local
52 prog = bpf_object__find_program_by_name(obj, "bpf_prog1"); in main()
53 if (!prog) { in main()
64 link = bpf_program__attach(prog); in main()
77 bpf_object__for_each_program(prog, obj) { in main()
78 section = bpf_program__section_name(prog); in main()
83 fd = bpf_program__fd(prog); in main()
/linux/net/core/
H A Dsock_reuseport.c184 RCU_INIT_POINTER(reuse->prog, NULL); in __reuseport_alloc()
276 more_reuse->prog = reuse->prog; in reuseport_grow()
307 sk_reuseport_prog_free(rcu_dereference_protected(reuse->prog, 1)); in reuseport_free_rcu()
466 struct bpf_prog *prog; in reuseport_stop_listen_sock() local
472 prog = rcu_dereference_protected(reuse->prog, in reuseport_stop_listen_sock()
476 (prog && prog->expected_attach_type == BPF_SK_REUSEPORT_SELECT_OR_MIGRATE)) { in reuseport_stop_listen_sock()
498 struct bpf_prog *prog, struct sk_buff *skb, in run_bpf_filter() argument
516 index = bpf_prog_run_save_cb(prog, skb); in run_bpf_filter()
574 struct bpf_prog *prog; in reuseport_select_sock() local
585 prog = rcu_dereference(reuse->prog); in reuseport_select_sock()
[all …]

12345678910>>...17