mirror of
https://git.proxmox.com/git/mirror_iproute2
synced 2025-11-03 12:26:45 +00:00
update kernel headers from net-next
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
This commit is contained in:
parent
f2df31170f
commit
143a704bf8
@ -101,11 +101,16 @@ enum bpf_prog_type {
|
||||
BPF_PROG_TYPE_XDP,
|
||||
BPF_PROG_TYPE_PERF_EVENT,
|
||||
BPF_PROG_TYPE_CGROUP_SKB,
|
||||
BPF_PROG_TYPE_CGROUP_SOCK,
|
||||
BPF_PROG_TYPE_LWT_IN,
|
||||
BPF_PROG_TYPE_LWT_OUT,
|
||||
BPF_PROG_TYPE_LWT_XMIT,
|
||||
};
|
||||
|
||||
enum bpf_attach_type {
|
||||
BPF_CGROUP_INET_INGRESS,
|
||||
BPF_CGROUP_INET_EGRESS,
|
||||
BPF_CGROUP_INET_SOCK_CREATE,
|
||||
__MAX_BPF_ATTACH_TYPE
|
||||
};
|
||||
|
||||
@ -409,6 +414,16 @@ union bpf_attr {
|
||||
*
|
||||
* int bpf_get_numa_node_id()
|
||||
* Return: Id of current NUMA node.
|
||||
*
|
||||
* int bpf_skb_change_head()
|
||||
* Grows headroom of skb and adjusts MAC header offset accordingly.
|
||||
* Will extends/reallocae as required automatically.
|
||||
* May change skb data pointer and will thus invalidate any check
|
||||
* performed for direct packet access.
|
||||
* @skb: pointer to skb
|
||||
* @len: length of header to be pushed in front
|
||||
* @flags: Flags (unused for now)
|
||||
* Return: 0 on success or negative error
|
||||
*/
|
||||
#define __BPF_FUNC_MAPPER(FN) \
|
||||
FN(unspec), \
|
||||
@ -453,7 +468,8 @@ union bpf_attr {
|
||||
FN(skb_pull_data), \
|
||||
FN(csum_update), \
|
||||
FN(set_hash_invalid), \
|
||||
FN(get_numa_node_id),
|
||||
FN(get_numa_node_id), \
|
||||
FN(skb_change_head),
|
||||
|
||||
/* integer value in 'imm' field of BPF_CALL instruction selects which helper
|
||||
* function eBPF program intends to call
|
||||
@ -537,6 +553,29 @@ struct bpf_tunnel_key {
|
||||
__u32 tunnel_label;
|
||||
};
|
||||
|
||||
/* Generic BPF return codes which all BPF program types may support.
|
||||
* The values are binary compatible with their TC_ACT_* counter-part to
|
||||
* provide backwards compatibility with existing SCHED_CLS and SCHED_ACT
|
||||
* programs.
|
||||
*
|
||||
* XDP is handled seprately, see XDP_*.
|
||||
*/
|
||||
enum bpf_ret_code {
|
||||
BPF_OK = 0,
|
||||
/* 1 reserved */
|
||||
BPF_DROP = 2,
|
||||
/* 3-6 reserved */
|
||||
BPF_REDIRECT = 7,
|
||||
/* >127 are reserved for prog type specific return codes */
|
||||
};
|
||||
|
||||
struct bpf_sock {
|
||||
__u32 bound_dev_if;
|
||||
__u32 family;
|
||||
__u32 type;
|
||||
__u32 protocol;
|
||||
};
|
||||
|
||||
/* User return codes for XDP prog type.
|
||||
* A valid XDP program must return one of these defined values. All other
|
||||
* return codes are reserved for future use. Unknown return codes will result
|
||||
|
||||
@ -10,6 +10,7 @@ enum lwtunnel_encap_types {
|
||||
LWTUNNEL_ENCAP_ILA,
|
||||
LWTUNNEL_ENCAP_IP6,
|
||||
LWTUNNEL_ENCAP_SEG6,
|
||||
LWTUNNEL_ENCAP_BPF,
|
||||
__LWTUNNEL_ENCAP_MAX,
|
||||
};
|
||||
|
||||
@ -43,4 +44,26 @@ enum lwtunnel_ip6_t {
|
||||
|
||||
#define LWTUNNEL_IP6_MAX (__LWTUNNEL_IP6_MAX - 1)
|
||||
|
||||
enum {
|
||||
LWT_BPF_PROG_UNSPEC,
|
||||
LWT_BPF_PROG_FD,
|
||||
LWT_BPF_PROG_NAME,
|
||||
__LWT_BPF_PROG_MAX,
|
||||
};
|
||||
|
||||
#define LWT_BPF_PROG_MAX (__LWT_BPF_PROG_MAX - 1)
|
||||
|
||||
enum {
|
||||
LWT_BPF_UNSPEC,
|
||||
LWT_BPF_IN,
|
||||
LWT_BPF_OUT,
|
||||
LWT_BPF_XMIT,
|
||||
LWT_BPF_XMIT_HEADROOM,
|
||||
__LWT_BPF_MAX,
|
||||
};
|
||||
|
||||
#define LWT_BPF_MAX (__LWT_BPF_MAX - 1)
|
||||
|
||||
#define LWT_BPF_MAX_HEADROOM 256
|
||||
|
||||
#endif /* _LWTUNNEL_H_ */
|
||||
|
||||
@ -33,10 +33,10 @@ enum {
|
||||
TCA_TUNNEL_KEY_ENC_IPV6_DST, /* struct in6_addr */
|
||||
TCA_TUNNEL_KEY_ENC_KEY_ID, /* be64 */
|
||||
TCA_TUNNEL_KEY_PAD,
|
||||
TCA_TUNNEL_KEY_ENC_DST_PORT, /* be16 */
|
||||
__TCA_TUNNEL_KEY_MAX,
|
||||
};
|
||||
|
||||
#define TCA_TUNNEL_KEY_MAX (__TCA_TUNNEL_KEY_MAX - 1)
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user