diff options
author | Stephen Hemminger <stephen@networkplumber.org> | 2016-01-18 09:40:13 -0800 |
---|---|---|
committer | Stephen Hemminger <stephen@networkplumber.org> | 2016-01-18 09:40:13 -0800 |
commit | 7321b7db6f0648d231cb7b05671682d89f07aff8 (patch) | |
tree | fbc6b56c26108b81d11ba1b8a7986311e392adcf | |
parent | 2505780c2081856f6eae22ae57d98e403f1735c7 (diff) | |
download | android_external_iproute2-7321b7db6f0648d231cb7b05671682d89f07aff8.tar.gz android_external_iproute2-7321b7db6f0648d231cb7b05671682d89f07aff8.tar.bz2 android_external_iproute2-7321b7db6f0648d231cb7b05671682d89f07aff8.zip |
update headers (post 4.4 merge window)
-rw-r--r-- | include/linux/bpf.h | 26 | ||||
-rw-r--r-- | include/linux/pkt_sched.h | 4 |
2 files changed, 29 insertions, 1 deletions
diff --git a/include/linux/bpf.h b/include/linux/bpf.h index 39e7f33..f970f9d 100644 --- a/include/linux/bpf.h +++ b/include/linux/bpf.h @@ -273,6 +273,25 @@ enum bpf_func_id { __BPF_FUNC_MAX_ID, }; +/* All flags used by eBPF helper functions, placed here. */ + +/* BPF_FUNC_skb_store_bytes flags. */ +#define BPF_F_RECOMPUTE_CSUM (1ULL << 0) + +/* BPF_FUNC_l3_csum_replace and BPF_FUNC_l4_csum_replace flags. + * First 4 bits are for passing the header field size. + */ +#define BPF_F_HDR_FIELD_MASK 0xfULL + +/* BPF_FUNC_l4_csum_replace flags. */ +#define BPF_F_PSEUDO_HDR (1ULL << 4) + +/* BPF_FUNC_clone_redirect and BPF_FUNC_redirect flags. */ +#define BPF_F_INGRESS (1ULL << 0) + +/* BPF_FUNC_skb_set_tunnel_key and BPF_FUNC_skb_get_tunnel_key flags. */ +#define BPF_F_TUNINFO_IPV6 (1ULL << 0) + /* user accessible mirror of in-kernel sk_buff. * new fields can only be added to the end of this structure */ @@ -296,7 +315,12 @@ struct __sk_buff { struct bpf_tunnel_key { __u32 tunnel_id; - __u32 remote_ipv4; + union { + __u32 remote_ipv4; + __u32 remote_ipv6[4]; + }; + __u8 tunnel_tos; + __u8 tunnel_ttl; }; #endif /* __LINUX_BPF_H__ */ diff --git a/include/linux/pkt_sched.h b/include/linux/pkt_sched.h index 8d2530d..8cb18b4 100644 --- a/include/linux/pkt_sched.h +++ b/include/linux/pkt_sched.h @@ -72,6 +72,10 @@ struct tc_estimator { #define TC_H_UNSPEC (0U) #define TC_H_ROOT (0xFFFFFFFFU) #define TC_H_INGRESS (0xFFFFFFF1U) +#define TC_H_CLSACT TC_H_INGRESS + +#define TC_H_MIN_INGRESS 0xFFF2U +#define TC_H_MIN_EGRESS 0xFFF3U /* Need to corrospond to iproute2 tc/tc_core.h "enum link_layer" */ enum tc_link_layer { |