mirror of https://gitee.com/openkylin/linux.git
bpf: update bpf.h uapi header for tools
Looks like a couple of updates missed to get carried into tools/include/uapi/, so copy the bpf.h header as usual to pull in latest updates. Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Acked-by: Alexei Starovoitov <ast@kernel.org> Acked-by: John Fastabend <john.fastabend@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
de8f3a83b0
commit
ac29991ba1
|
@ -143,12 +143,6 @@ enum bpf_attach_type {
|
||||||
|
|
||||||
#define MAX_BPF_ATTACH_TYPE __MAX_BPF_ATTACH_TYPE
|
#define MAX_BPF_ATTACH_TYPE __MAX_BPF_ATTACH_TYPE
|
||||||
|
|
||||||
enum bpf_sockmap_flags {
|
|
||||||
BPF_SOCKMAP_UNSPEC,
|
|
||||||
BPF_SOCKMAP_STRPARSER,
|
|
||||||
__MAX_BPF_SOCKMAP_FLAG
|
|
||||||
};
|
|
||||||
|
|
||||||
/* If BPF_F_ALLOW_OVERRIDE flag is used in BPF_PROG_ATTACH command
|
/* If BPF_F_ALLOW_OVERRIDE flag is used in BPF_PROG_ATTACH command
|
||||||
* to the given target_fd cgroup the descendent cgroup will be able to
|
* to the given target_fd cgroup the descendent cgroup will be able to
|
||||||
* override effective bpf program that was inherited from this cgroup
|
* override effective bpf program that was inherited from this cgroup
|
||||||
|
@ -368,9 +362,20 @@ union bpf_attr {
|
||||||
* int bpf_redirect(ifindex, flags)
|
* int bpf_redirect(ifindex, flags)
|
||||||
* redirect to another netdev
|
* redirect to another netdev
|
||||||
* @ifindex: ifindex of the net device
|
* @ifindex: ifindex of the net device
|
||||||
* @flags: bit 0 - if set, redirect to ingress instead of egress
|
* @flags:
|
||||||
* other bits - reserved
|
* cls_bpf:
|
||||||
* Return: TC_ACT_REDIRECT
|
* bit 0 - if set, redirect to ingress instead of egress
|
||||||
|
* other bits - reserved
|
||||||
|
* xdp_bpf:
|
||||||
|
* all bits - reserved
|
||||||
|
* Return: cls_bpf: TC_ACT_REDIRECT on success or TC_ACT_SHOT on error
|
||||||
|
* xdp_bfp: XDP_REDIRECT on success or XDP_ABORT on error
|
||||||
|
* int bpf_redirect_map(map, key, flags)
|
||||||
|
* redirect to endpoint in map
|
||||||
|
* @map: pointer to dev map
|
||||||
|
* @key: index in map to lookup
|
||||||
|
* @flags: --
|
||||||
|
* Return: XDP_REDIRECT on success or XDP_ABORT on error
|
||||||
*
|
*
|
||||||
* u32 bpf_get_route_realm(skb)
|
* u32 bpf_get_route_realm(skb)
|
||||||
* retrieve a dst's tclassid
|
* retrieve a dst's tclassid
|
||||||
|
@ -577,6 +582,12 @@ union bpf_attr {
|
||||||
* @map: pointer to sockmap to update
|
* @map: pointer to sockmap to update
|
||||||
* @key: key to insert/update sock in map
|
* @key: key to insert/update sock in map
|
||||||
* @flags: same flags as map update elem
|
* @flags: same flags as map update elem
|
||||||
|
*
|
||||||
|
* int bpf_xdp_adjust_meta(xdp_md, delta)
|
||||||
|
* Adjust the xdp_md.data_meta by delta
|
||||||
|
* @xdp_md: pointer to xdp_md
|
||||||
|
* @delta: An positive/negative integer to be added to xdp_md.data_meta
|
||||||
|
* Return: 0 on success or negative on error
|
||||||
*/
|
*/
|
||||||
#define __BPF_FUNC_MAPPER(FN) \
|
#define __BPF_FUNC_MAPPER(FN) \
|
||||||
FN(unspec), \
|
FN(unspec), \
|
||||||
|
@ -632,7 +643,8 @@ union bpf_attr {
|
||||||
FN(skb_adjust_room), \
|
FN(skb_adjust_room), \
|
||||||
FN(redirect_map), \
|
FN(redirect_map), \
|
||||||
FN(sk_redirect_map), \
|
FN(sk_redirect_map), \
|
||||||
FN(sock_map_update),
|
FN(sock_map_update), \
|
||||||
|
FN(xdp_adjust_meta),
|
||||||
|
|
||||||
/* integer value in 'imm' field of BPF_CALL instruction selects which helper
|
/* integer value in 'imm' field of BPF_CALL instruction selects which helper
|
||||||
* function eBPF program intends to call
|
* function eBPF program intends to call
|
||||||
|
@ -710,7 +722,7 @@ struct __sk_buff {
|
||||||
__u32 data_end;
|
__u32 data_end;
|
||||||
__u32 napi_id;
|
__u32 napi_id;
|
||||||
|
|
||||||
/* accessed by BPF_PROG_TYPE_sk_skb types */
|
/* Accessed by BPF_PROG_TYPE_sk_skb types from here to ... */
|
||||||
__u32 family;
|
__u32 family;
|
||||||
__u32 remote_ip4; /* Stored in network byte order */
|
__u32 remote_ip4; /* Stored in network byte order */
|
||||||
__u32 local_ip4; /* Stored in network byte order */
|
__u32 local_ip4; /* Stored in network byte order */
|
||||||
|
@ -718,6 +730,9 @@ struct __sk_buff {
|
||||||
__u32 local_ip6[4]; /* Stored in network byte order */
|
__u32 local_ip6[4]; /* Stored in network byte order */
|
||||||
__u32 remote_port; /* Stored in network byte order */
|
__u32 remote_port; /* Stored in network byte order */
|
||||||
__u32 local_port; /* stored in host byte order */
|
__u32 local_port; /* stored in host byte order */
|
||||||
|
/* ... here. */
|
||||||
|
|
||||||
|
__u32 data_meta;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct bpf_tunnel_key {
|
struct bpf_tunnel_key {
|
||||||
|
@ -753,20 +768,23 @@ struct bpf_sock {
|
||||||
__u32 family;
|
__u32 family;
|
||||||
__u32 type;
|
__u32 type;
|
||||||
__u32 protocol;
|
__u32 protocol;
|
||||||
|
__u32 mark;
|
||||||
|
__u32 priority;
|
||||||
};
|
};
|
||||||
|
|
||||||
#define XDP_PACKET_HEADROOM 256
|
#define XDP_PACKET_HEADROOM 256
|
||||||
|
|
||||||
/* User return codes for XDP prog type.
|
/* User return codes for XDP prog type.
|
||||||
* A valid XDP program must return one of these defined values. All other
|
* 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
|
* return codes are reserved for future use. Unknown return codes will
|
||||||
* in packet drop.
|
* result in packet drops and a warning via bpf_warn_invalid_xdp_action().
|
||||||
*/
|
*/
|
||||||
enum xdp_action {
|
enum xdp_action {
|
||||||
XDP_ABORTED = 0,
|
XDP_ABORTED = 0,
|
||||||
XDP_DROP,
|
XDP_DROP,
|
||||||
XDP_PASS,
|
XDP_PASS,
|
||||||
XDP_TX,
|
XDP_TX,
|
||||||
|
XDP_REDIRECT,
|
||||||
};
|
};
|
||||||
|
|
||||||
/* user accessible metadata for XDP packet hook
|
/* user accessible metadata for XDP packet hook
|
||||||
|
@ -775,6 +793,7 @@ enum xdp_action {
|
||||||
struct xdp_md {
|
struct xdp_md {
|
||||||
__u32 data;
|
__u32 data;
|
||||||
__u32 data_end;
|
__u32 data_end;
|
||||||
|
__u32 data_meta;
|
||||||
};
|
};
|
||||||
|
|
||||||
enum sk_action {
|
enum sk_action {
|
||||||
|
|
Loading…
Reference in New Issue