diff options
author | robot-contrib <robot-contrib@yandex-team.com> | 2023-11-11 02:21:37 +0300 |
---|---|---|
committer | robot-contrib <robot-contrib@yandex-team.com> | 2023-11-11 02:40:39 +0300 |
commit | c9eb66546bc5c72ff6a4424f5c73ada67d0aeaa8 (patch) | |
tree | 4a18f83f5979766f6a360805a97500e9b2beeb75 /contrib/libs/linux-headers/linux/bpf.h | |
parent | 638336990198a7f36d43cfd21a42b25d9dcb6efc (diff) | |
download | ydb-c9eb66546bc5c72ff6a4424f5c73ada67d0aeaa8.tar.gz |
Update contrib/libs/linux-headers to 6.5.9
Diffstat (limited to 'contrib/libs/linux-headers/linux/bpf.h')
-rw-r--r-- | contrib/libs/linux-headers/linux/bpf.h | 35 |
1 files changed, 31 insertions, 4 deletions
diff --git a/contrib/libs/linux-headers/linux/bpf.h b/contrib/libs/linux-headers/linux/bpf.h index d93f46eefa..14674d2fe9 100644 --- a/contrib/libs/linux-headers/linux/bpf.h +++ b/contrib/libs/linux-headers/linux/bpf.h @@ -1273,6 +1273,9 @@ enum { /* Create a map that will be registered/unregesitered by the backed bpf_link */ BPF_F_LINK = (1U << 13), + +/* Get path from provided FD in BPF_OBJ_PIN/BPF_OBJ_GET commands */ + BPF_F_PATH_FD = (1U << 14), }; /* Flags for BPF_PROG_QUERY. */ @@ -1421,6 +1424,13 @@ union bpf_attr { __aligned_u64 pathname; __u32 bpf_fd; __u32 file_flags; + /* Same as dirfd in openat() syscall; see openat(2) + * manpage for details of path FD and pathname semantics; + * path_fd should accompanied by BPF_F_PATH_FD flag set in + * file_flags field, otherwise it should be set to zero; + * if BPF_F_PATH_FD flag is not set, AT_FDCWD is assumed. + */ + __s32 path_fd; }; struct { /* anonymous struct used by BPF_PROG_ATTACH/DETACH commands */ @@ -1887,7 +1897,9 @@ union bpf_attr { * performed again, if the helper is used in combination with * direct packet access. * Return - * 0 on success, or a negative error in case of failure. + * 0 on success, or a negative error in case of failure. Positive + * error indicates a potential drop or congestion in the target + * device. The particular positive error codes are not defined. * * u64 bpf_get_current_pid_tgid(void) * Description @@ -3168,6 +3180,10 @@ union bpf_attr { * **BPF_FIB_LOOKUP_DIRECT** * Do a direct table lookup vs full lookup using FIB * rules. + * **BPF_FIB_LOOKUP_TBID** + * Used with BPF_FIB_LOOKUP_DIRECT. + * Use the routing table ID present in *params*->tbid + * for the fib lookup. * **BPF_FIB_LOOKUP_OUTPUT** * Perform lookup from an egress perspective (default is * ingress). @@ -6822,6 +6838,7 @@ enum { BPF_FIB_LOOKUP_DIRECT = (1U << 0), BPF_FIB_LOOKUP_OUTPUT = (1U << 1), BPF_FIB_LOOKUP_SKIP_NEIGH = (1U << 2), + BPF_FIB_LOOKUP_TBID = (1U << 3), }; enum { @@ -6882,9 +6899,19 @@ struct bpf_fib_lookup { __u32 ipv6_dst[4]; /* in6_addr; network order */ }; - /* output */ - __be16 h_vlan_proto; - __be16 h_vlan_TCI; + union { + struct { + /* output */ + __be16 h_vlan_proto; + __be16 h_vlan_TCI; + }; + /* input: when accompanied with the + * 'BPF_FIB_LOOKUP_DIRECT | BPF_FIB_LOOKUP_TBID` flags, a + * specific routing table to use for the fib lookup. + */ + __u32 tbid; + }; + __u8 smac[6]; /* ETH_ALEN */ __u8 dmac[6]; /* ETH_ALEN */ }; |