Lines Matching refs:prog

101 	RCU_INIT_POINTER(reuse->prog, NULL);  in __reuseport_alloc()
192 more_reuse->prog = reuse->prog; in reuseport_grow()
222 sk_reuseport_prog_free(rcu_dereference_protected(reuse->prog, 1)); in reuseport_free_rcu()
381 struct bpf_prog *prog; in reuseport_stop_listen_sock() local
387 prog = rcu_dereference_protected(reuse->prog, in reuseport_stop_listen_sock()
391 (prog && prog->expected_attach_type == BPF_SK_REUSEPORT_SELECT_OR_MIGRATE)) { in reuseport_stop_listen_sock()
413 struct bpf_prog *prog, struct sk_buff *skb, in run_bpf_filter() argument
431 index = bpf_prog_run_save_cb(prog, skb); in run_bpf_filter()
475 struct bpf_prog *prog; in reuseport_select_sock() local
486 prog = rcu_dereference(reuse->prog); in reuseport_select_sock()
492 if (!prog || !skb) in reuseport_select_sock()
495 if (prog->type == BPF_PROG_TYPE_SK_REUSEPORT) in reuseport_select_sock()
496 sk2 = bpf_run_sk_reuseport(reuse, sk, prog, skb, NULL, hash); in reuseport_select_sock()
498 sk2 = run_bpf_filter(reuse, socks, prog, skb, hdr_len); in reuseport_select_sock()
528 struct bpf_prog *prog; in reuseport_migrate_sock() local
546 prog = rcu_dereference(reuse->prog); in reuseport_migrate_sock()
547 if (!prog || prog->expected_attach_type != BPF_SK_REUSEPORT_SELECT_OR_MIGRATE) { in reuseport_migrate_sock()
560 nsk = bpf_run_sk_reuseport(reuse, sk, prog, skb, migrating_sk, hash); in reuseport_migrate_sock()
584 int reuseport_attach_prog(struct sock *sk, struct bpf_prog *prog) in reuseport_attach_prog() argument
606 old_prog = rcu_dereference_protected(reuse->prog, in reuseport_attach_prog()
608 rcu_assign_pointer(reuse->prog, prog); in reuseport_attach_prog()
639 old_prog = rcu_replace_pointer(reuse->prog, old_prog, in reuseport_detach_prog()