bpf: Sync kernel ABI header with tooling header
authorJesper Dangaard Brouer <brouer@redhat.com>
Thu, 18 Jan 2018 16:49:08 +0000 (17:49 +0100)
committerDaniel Borkmann <daniel@iogearbox.net>
Thu, 18 Jan 2018 21:17:08 +0000 (22:17 +0100)
Update tools/include/uapi/linux/bpf.h to bring it in sync with
include/uapi/linux/bpf.h.  The listed commits forgot to update it.

Fixes: 02dd3291b2f0 ("bpf: finally expose xdp_rxq_info to XDP bpf-programs")
Fixes: f19397a5c656 ("bpf: Add access to snd_cwnd and others in sock_ops")
Fixes: 06ef0ccb5a36 ("bpf/cgroup: fix a verification error for a CGROUP_DEVICE type prog")
Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
tools/include/uapi/linux/bpf.h

index 69f96af4a5694cf21ad95f80a36324e71cde3a6b..7c2259e8bc545998cc4d88a0ed3b18cabbde202d 100644 (file)
@@ -900,6 +900,9 @@ struct xdp_md {
        __u32 data;
        __u32 data_end;
        __u32 data_meta;
+       /* Below access go through struct xdp_rxq_info */
+       __u32 ingress_ifindex; /* rxq->dev->ifindex */
+       __u32 rx_queue_index;  /* rxq->queue_index  */
 };
 
 enum sk_action {
@@ -956,6 +959,12 @@ struct bpf_sock_ops {
        __u32 local_ip6[4];     /* Stored in network byte order */
        __u32 remote_port;      /* Stored in network byte order */
        __u32 local_port;       /* stored in host byte order */
+       __u32 is_fullsock;      /* Some TCP fields are only valid if
+                                * there is a full socket. If not, the
+                                * fields read as zero.
+                                */
+       __u32 snd_cwnd;
+       __u32 srtt_us;          /* Averaged RTT << 3 in usecs */
 };
 
 /* List of known BPF sock_ops operators.
@@ -1010,7 +1019,8 @@ struct bpf_perf_event_value {
 #define BPF_DEVCG_DEV_CHAR     (1ULL << 1)
 
 struct bpf_cgroup_dev_ctx {
-       __u32 access_type; /* (access << 16) | type */
+       /* access_type encoded as (BPF_DEVCG_ACC_* << 16) | BPF_DEVCG_DEV_* */
+       __u32 access_type;
        __u32 major;
        __u32 minor;
 };