Home
last modified time | relevance | path

Searched refs:sock_ops (Results 1 – 11 of 11) sorted by relevance

/linux-6.15/include/linux/
H A Dbpf-cgroup.h135 struct bpf_sock_ops_kern *sock_ops,
336 #define BPF_CGROUP_RUN_PROG_SOCK_OPS_SK(sock_ops, sk) \ argument
341 sock_ops, \
346 #define BPF_CGROUP_RUN_PROG_SOCK_OPS(sock_ops) \ argument
349 if (cgroup_bpf_enabled(CGROUP_SOCK_OPS) && (sock_ops)->sk) { \
350 typeof(sk) __sk = sk_to_full_sk((sock_ops)->sk); \
353 sock_ops, \
511 #define BPF_CGROUP_RUN_PROG_SOCK_OPS(sock_ops) ({ 0; }) argument
H A Dbpf_types.h29 BPF_PROG_TYPE(BPF_PROG_TYPE_SOCK_OPS, sock_ops,
/linux-6.15/samples/bpf/
H A Dtcp_bpf.readme15 bpftool cgroup attach /tmp/cgroupv2/foo sock_ops pinned /sys/fs/bpf/tcp_prog
28 bpftool cgroup detach /tmp/cgroupv2/foo sock_ops pinned /sys/fs/bpf/tcp_prog
/linux-6.15/net/ipv4/
H A Dtcp_output.c493 struct bpf_sock_ops_kern sock_ops; in bpf_skops_hdr_opt_len() local
522 sock_ops.sk = (struct sock *)req; in bpf_skops_hdr_opt_len()
523 sock_ops.syn_skb = syn_skb; in bpf_skops_hdr_opt_len()
527 sock_ops.is_fullsock = 1; in bpf_skops_hdr_opt_len()
528 sock_ops.is_locked_tcp_sock = 1; in bpf_skops_hdr_opt_len()
529 sock_ops.sk = sk; in bpf_skops_hdr_opt_len()
557 struct bpf_sock_ops_kern sock_ops; in bpf_skops_write_hdr_opt() local
569 sock_ops.syn_skb = syn_skb; in bpf_skops_write_hdr_opt()
573 sock_ops.is_fullsock = 1; in bpf_skops_write_hdr_opt()
574 sock_ops.is_locked_tcp_sock = 1; in bpf_skops_write_hdr_opt()
[all …]
H A Dtcp_input.c152 struct bpf_sock_ops_kern sock_ops; in bpf_skops_parse_hdr() local
172 sock_ops.is_fullsock = 1; in bpf_skops_parse_hdr()
173 sock_ops.is_locked_tcp_sock = 1; in bpf_skops_parse_hdr()
174 sock_ops.sk = sk; in bpf_skops_parse_hdr()
177 BPF_CGROUP_RUN_PROG_SOCK_OPS(&sock_ops); in bpf_skops_parse_hdr()
183 struct bpf_sock_ops_kern sock_ops; in bpf_skops_established() local
188 sock_ops.op = bpf_op; in bpf_skops_established()
189 sock_ops.is_fullsock = 1; in bpf_skops_established()
190 sock_ops.is_locked_tcp_sock = 1; in bpf_skops_established()
191 sock_ops.sk = sk; in bpf_skops_established()
[all …]
/linux-6.15/tools/testing/selftests/bpf/
H A Dcgroup_getset_retval_hooks.h6 BPF_RETVAL_HOOK(sock_ops, "sockops", bpf_sock_ops, -EINVAL)
/linux-6.15/include/net/
H A Dtcp.h2723 struct bpf_sock_ops_kern sock_ops; in tcp_call_bpf() local
2726 memset(&sock_ops, 0, offsetof(struct bpf_sock_ops_kern, temp)); in tcp_call_bpf()
2728 sock_ops.is_fullsock = 1; in tcp_call_bpf()
2729 sock_ops.is_locked_tcp_sock = 1; in tcp_call_bpf()
2733 sock_ops.sk = sk; in tcp_call_bpf()
2734 sock_ops.op = op; in tcp_call_bpf()
2736 memcpy(sock_ops.args, args, nargs * sizeof(*args)); in tcp_call_bpf()
2738 ret = BPF_CGROUP_RUN_PROG_SOCK_OPS(&sock_ops); in tcp_call_bpf()
2740 ret = sock_ops.reply; in tcp_call_bpf()
/linux-6.15/tools/testing/selftests/bpf/prog_tests/
H A Dsock_addr.c276 struct sock_ops { struct
315 struct sock_ops user_ops = {
326 struct sock_ops kern_ops_sock_sendmsg = {
337 struct sock_ops kern_ops_kernel_sendmsg = {
356 struct sock_ops *ops;
/linux-6.15/tools/bpf/bpftool/Documentation/
H A Dbpftool-cgroup.rst98 - **sock_ops** various socket operations (since 4.12)
/linux-6.15/net/core/
H A Dsock.c955 struct bpf_sock_ops_kern sock_ops; in bpf_skops_tx_timestamping() local
957 memset(&sock_ops, 0, offsetof(struct bpf_sock_ops_kern, temp)); in bpf_skops_tx_timestamping()
958 sock_ops.op = op; in bpf_skops_tx_timestamping()
959 sock_ops.is_fullsock = 1; in bpf_skops_tx_timestamping()
960 sock_ops.sk = sk; in bpf_skops_tx_timestamping()
961 bpf_skops_init_skb(&sock_ops, skb, 0); in bpf_skops_tx_timestamping()
962 __cgroup_bpf_run_filter_sock_ops(sk, &sock_ops, CGROUP_SOCK_OPS); in bpf_skops_tx_timestamping()
/linux-6.15/kernel/bpf/
H A Dcgroup.c1556 struct bpf_sock_ops_kern *sock_ops, in __cgroup_bpf_run_filter_sock_ops() argument
1561 return bpf_prog_run_array_cg(&cgrp->bpf, atype, sock_ops, bpf_prog_run, in __cgroup_bpf_run_filter_sock_ops()