]> git.proxmox.com Git - mirror_iproute2.git/commitdiff
Update kernel headers
authorDavid Ahern <dsahern@gmail.com>
Wed, 10 Jul 2019 20:52:48 +0000 (13:52 -0700)
committerDavid Ahern <dsahern@gmail.com>
Wed, 10 Jul 2019 20:52:48 +0000 (13:52 -0700)
Update kernel headers to commit:
    1ff2f0fa450e ("net/mlx5e: Return in default case statement in tx_post_resync_params")

import include/uapi/linux/const.h per new dependency in
include/uapi/linux/pkt_cls.h.

Signed-off-by: David Ahern <dsahern@gmail.com>
include/uapi/linux/bpf.h
include/uapi/linux/const.h [new file with mode: 0644]
include/uapi/linux/devlink.h
include/uapi/linux/if_link.h
include/uapi/linux/if_packet.h
include/uapi/linux/pkt_cls.h
include/uapi/linux/pkt_sched.h

index fcdf80a652c53b1c8fec63068cf3eff6ca3ff690..0c3e3d9a5ab9ce8f51b88836fc76514b67fea323 100644 (file)
@@ -170,6 +170,7 @@ enum bpf_prog_type {
        BPF_PROG_TYPE_FLOW_DISSECTOR,
        BPF_PROG_TYPE_CGROUP_SYSCTL,
        BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE,
+       BPF_PROG_TYPE_CGROUP_SOCKOPT,
 };
 
 enum bpf_attach_type {
@@ -194,6 +195,8 @@ enum bpf_attach_type {
        BPF_CGROUP_SYSCTL,
        BPF_CGROUP_UDP4_RECVMSG,
        BPF_CGROUP_UDP6_RECVMSG,
+       BPF_CGROUP_GETSOCKOPT,
+       BPF_CGROUP_SETSOCKOPT,
        __MAX_BPF_ATTACH_TYPE
 };
 
@@ -1568,8 +1571,11 @@ union bpf_attr {
  *             but this is only implemented for native XDP (with driver
  *             support) as of this writing).
  *
- *             All values for *flags* are reserved for future usage, and must
- *             be left at zero.
+ *             The lower two bits of *flags* are used as the return code if
+ *             the map lookup fails. This is so that the return value can be
+ *             one of the XDP program return codes up to XDP_TX, as chosen by
+ *             the caller. Any higher bits in the *flags* argument must be
+ *             unset.
  *
  *             When used to redirect packets to net devices, this helper
  *             provides a high performance increase over **bpf_redirect**\ ().
@@ -1764,6 +1770,7 @@ union bpf_attr {
  *             * **BPF_SOCK_OPS_RTO_CB_FLAG** (retransmission time out)
  *             * **BPF_SOCK_OPS_RETRANS_CB_FLAG** (retransmission)
  *             * **BPF_SOCK_OPS_STATE_CB_FLAG** (TCP state change)
+ *             * **BPF_SOCK_OPS_RTT_CB_FLAG** (every RTT)
  *
  *             Therefore, this function can be used to clear a callback flag by
  *             setting the appropriate bit to zero. e.g. to disable the RTO
@@ -3066,6 +3073,12 @@ struct bpf_tcp_sock {
                                 * sum(delta(snd_una)), or how many bytes
                                 * were acked.
                                 */
+       __u32 dsack_dups;       /* RFC4898 tcpEStatsStackDSACKDups
+                                * total number of DSACK blocks received
+                                */
+       __u32 delivered;        /* Total data packets delivered incl. rexmits */
+       __u32 delivered_ce;     /* Like the above but only ECE marked packets */
+       __u32 icsk_retransmits; /* Number of unrecovered [RTO] timeouts */
 };
 
 struct bpf_sock_tuple {
@@ -3180,6 +3193,7 @@ struct bpf_prog_info {
        char name[BPF_OBJ_NAME_LEN];
        __u32 ifindex;
        __u32 gpl_compatible:1;
+       __u32 :31; /* alignment pad */
        __u64 netns_dev;
        __u64 netns_ino;
        __u32 nr_jited_ksyms;
@@ -3234,7 +3248,7 @@ struct bpf_sock_addr {
        __u32 user_ip4;         /* Allows 1,2,4-byte read and 4-byte write.
                                 * Stored in network byte order.
                                 */
-       __u32 user_ip6[4];      /* Allows 1,2,4-byte read an 4-byte write.
+       __u32 user_ip6[4];      /* Allows 1,2,4-byte read and 4,8-byte write.
                                 * Stored in network byte order.
                                 */
        __u32 user_port;        /* Allows 4-byte read and write.
@@ -3243,10 +3257,10 @@ struct bpf_sock_addr {
        __u32 family;           /* Allows 4-byte read, but no write */
        __u32 type;             /* Allows 4-byte read, but no write */
        __u32 protocol;         /* Allows 4-byte read, but no write */
-       __u32 msg_src_ip4;      /* Allows 1,2,4-byte read an 4-byte write.
+       __u32 msg_src_ip4;      /* Allows 1,2,4-byte read and 4-byte write.
                                 * Stored in network byte order.
                                 */
-       __u32 msg_src_ip6[4];   /* Allows 1,2,4-byte read an 4-byte write.
+       __u32 msg_src_ip6[4];   /* Allows 1,2,4-byte read and 4,8-byte write.
                                 * Stored in network byte order.
                                 */
        __bpf_md_ptr(struct bpf_sock *, sk);
@@ -3308,7 +3322,8 @@ struct bpf_sock_ops {
 #define BPF_SOCK_OPS_RTO_CB_FLAG       (1<<0)
 #define BPF_SOCK_OPS_RETRANS_CB_FLAG   (1<<1)
 #define BPF_SOCK_OPS_STATE_CB_FLAG     (1<<2)
-#define BPF_SOCK_OPS_ALL_CB_FLAGS       0x7            /* Mask of all currently
+#define BPF_SOCK_OPS_RTT_CB_FLAG       (1<<3)
+#define BPF_SOCK_OPS_ALL_CB_FLAGS       0xF            /* Mask of all currently
                                                         * supported cb flags
                                                         */
 
@@ -3363,6 +3378,8 @@ enum {
        BPF_SOCK_OPS_TCP_LISTEN_CB,     /* Called on listen(2), right after
                                         * socket transition to LISTEN state.
                                         */
+       BPF_SOCK_OPS_RTT_CB,            /* Called on every RTT.
+                                        */
 };
 
 /* List of TCP states. There is a build check in net/ipv4/tcp.c to detect
@@ -3541,4 +3558,15 @@ struct bpf_sysctl {
                                 */
 };
 
+struct bpf_sockopt {
+       __bpf_md_ptr(struct bpf_sock *, sk);
+       __bpf_md_ptr(void *, optval);
+       __bpf_md_ptr(void *, optval_end);
+
+       __s32   level;
+       __s32   optname;
+       __s32   optlen;
+       __s32   retval;
+};
+
 #endif /* __LINUX_BPF_H__ */
diff --git a/include/uapi/linux/const.h b/include/uapi/linux/const.h
new file mode 100644 (file)
index 0000000..fd885c7
--- /dev/null
@@ -0,0 +1,31 @@
+/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
+/* const.h: Macros for dealing with constants.  */
+
+#ifndef _LINUX_CONST_H
+#define _LINUX_CONST_H
+
+/* Some constant macros are used in both assembler and
+ * C code.  Therefore we cannot annotate them always with
+ * 'UL' and other type specifiers unilaterally.  We
+ * use the following macros to deal with this.
+ *
+ * Similarly, _AT() will cast an expression with a type in C, but
+ * leave it unchanged in asm.
+ */
+
+#ifdef __ASSEMBLY__
+#define _AC(X,Y)       X
+#define _AT(T,X)       X
+#else
+#define __AC(X,Y)      (X##Y)
+#define _AC(X,Y)       __AC(X,Y)
+#define _AT(T,X)       ((T)(X))
+#endif
+
+#define _UL(x)         (_AC(x, UL))
+#define _ULL(x)                (_AC(x, ULL))
+
+#define _BITUL(x)      (_UL(1) << (x))
+#define _BITULL(x)     (_ULL(1) << (x))
+
+#endif /* _LINUX_CONST_H */
index 6544824a0b97b624265c74bed115746dde2349be..fc195cbd66f45ef6f8e3c4dd545c03b528cb729b 100644 (file)
@@ -169,6 +169,14 @@ enum devlink_port_flavour {
        DEVLINK_PORT_FLAVOUR_DSA, /* Distributed switch architecture
                                   * interconnect port.
                                   */
+       DEVLINK_PORT_FLAVOUR_PCI_PF, /* Represents eswitch port for
+                                     * the PCI PF. It is an internal
+                                     * port that faces the PCI PF.
+                                     */
+       DEVLINK_PORT_FLAVOUR_PCI_VF, /* Represents eswitch port
+                                     * for the PCI VF. It is an internal
+                                     * port that faces the PCI VF.
+                                     */
 };
 
 enum devlink_param_cmode {
@@ -337,6 +345,9 @@ enum devlink_attr {
        DEVLINK_ATTR_FLASH_UPDATE_STATUS_DONE,  /* u64 */
        DEVLINK_ATTR_FLASH_UPDATE_STATUS_TOTAL, /* u64 */
 
+       DEVLINK_ATTR_PORT_PCI_PF_NUMBER,        /* u16 */
+       DEVLINK_ATTR_PORT_PCI_VF_NUMBER,        /* u16 */
+
        /* add new attributes above here, update the policy in devlink.c */
 
        __DEVLINK_ATTR_MAX,
index b59554dd55cbc43f5ca86d821615c67ef3c5a03b..d36919fb4024a3c1e1f1d1414fd5d1b3d0d2229b 100644 (file)
@@ -634,6 +634,7 @@ enum {
        IFLA_BOND_AD_USER_PORT_KEY,
        IFLA_BOND_AD_ACTOR_SYSTEM,
        IFLA_BOND_TLB_DYNAMIC_LB,
+       IFLA_BOND_PEER_NOTIF_DELAY,
        __IFLA_BOND_MAX,
 };
 
index 467b654bd4c7df2aab3e8db892dbd14739ff21fd..3d884d68eb3013d16b4f54656c738b467e490189 100644 (file)
@@ -123,7 +123,7 @@ struct tpacket_auxdata {
 /* Rx and Tx ring - header status */
 #define TP_STATUS_TS_SOFTWARE          (1 << 29)
 #define TP_STATUS_TS_SYS_HARDWARE      (1 << 30) /* deprecated, never set */
-#define TP_STATUS_TS_RAW_HARDWARE      (1 << 31)
+#define TP_STATUS_TS_RAW_HARDWARE      (1U << 31)
 
 /* Rx ring - feature request bits */
 #define TP_FT_REQ_FILL_RXHASH  0x1
index 8cc6b6777b3cfd782850c9dd468bf98669d98638..b057aeeb63386442d0e1e8d91321adddc69b4e79 100644 (file)
@@ -104,8 +104,10 @@ enum tca_id {
        TCA_ID_SIMP = TCA_ACT_SIMP,
        TCA_ID_IFE = TCA_ACT_IFE,
        TCA_ID_SAMPLE = TCA_ACT_SAMPLE,
-       /* other actions go here */
        TCA_ID_CTINFO,
+       TCA_ID_MPLS,
+       TCA_ID_CT,
+       /* other actions go here */
        __TCA_ID_MAX = 255
 };
 
@@ -535,11 +537,27 @@ enum {
        TCA_FLOWER_KEY_PORT_DST_MIN,    /* be16 */
        TCA_FLOWER_KEY_PORT_DST_MAX,    /* be16 */
 
+       TCA_FLOWER_KEY_CT_STATE,        /* u16 */
+       TCA_FLOWER_KEY_CT_STATE_MASK,   /* u16 */
+       TCA_FLOWER_KEY_CT_ZONE,         /* u16 */
+       TCA_FLOWER_KEY_CT_ZONE_MASK,    /* u16 */
+       TCA_FLOWER_KEY_CT_MARK,         /* u32 */
+       TCA_FLOWER_KEY_CT_MARK_MASK,    /* u32 */
+       TCA_FLOWER_KEY_CT_LABELS,       /* u128 */
+       TCA_FLOWER_KEY_CT_LABELS_MASK,  /* u128 */
+
        __TCA_FLOWER_MAX,
 };
 
 #define TCA_FLOWER_MAX (__TCA_FLOWER_MAX - 1)
 
+enum {
+       TCA_FLOWER_KEY_CT_FLAGS_NEW = 1 << 0, /* Beginning of a new connection. */
+       TCA_FLOWER_KEY_CT_FLAGS_ESTABLISHED = 1 << 1, /* Part of an existing connection. */
+       TCA_FLOWER_KEY_CT_FLAGS_RELATED = 1 << 2, /* Related to an established connection. */
+       TCA_FLOWER_KEY_CT_FLAGS_TRACKED = 1 << 3, /* Conntrack has occurred. */
+};
+
 enum {
        TCA_FLOWER_KEY_ENC_OPTS_UNSPEC,
        TCA_FLOWER_KEY_ENC_OPTS_GENEVE, /* Nested
index 8b2f993cbb773dcfb90dadc306cb98d5a66083fb..1f623252abe835f34c2a6b09c55b363af6cafa3a 100644 (file)
@@ -2,6 +2,7 @@
 #ifndef __LINUX_PKT_SCHED_H
 #define __LINUX_PKT_SCHED_H
 
+#include <linux/const.h>
 #include <linux/types.h>
 
 /* Logical priority bands not depending on specific packet scheduler.
@@ -988,8 +989,9 @@ struct tc_etf_qopt {
        __s32 delta;
        __s32 clockid;
        __u32 flags;
-#define TC_ETF_DEADLINE_MODE_ON        BIT(0)
-#define TC_ETF_OFFLOAD_ON      BIT(1)
+#define TC_ETF_DEADLINE_MODE_ON        _BITUL(0)
+#define TC_ETF_OFFLOAD_ON      _BITUL(1)
+#define TC_ETF_SKIP_SOCK_CHECK _BITUL(2)
 };
 
 enum {
@@ -1158,6 +1160,8 @@ enum {
  *       [TCA_TAPRIO_ATTR_SCHED_ENTRY_INTERVAL]
  */
 
+#define TCA_TAPRIO_ATTR_FLAG_TXTIME_ASSIST 0x1
+
 enum {
        TCA_TAPRIO_ATTR_UNSPEC,
        TCA_TAPRIO_ATTR_PRIOMAP, /* struct tc_mqprio_qopt */
@@ -1169,6 +1173,8 @@ enum {
        TCA_TAPRIO_ATTR_ADMIN_SCHED, /* The admin sched, only used in dump */
        TCA_TAPRIO_ATTR_SCHED_CYCLE_TIME, /* s64 */
        TCA_TAPRIO_ATTR_SCHED_CYCLE_TIME_EXTENSION, /* s64 */
+       TCA_TAPRIO_ATTR_FLAGS, /* u32 */
+       TCA_TAPRIO_ATTR_TXTIME_DELAY, /* s32 */
        __TCA_TAPRIO_ATTR_MAX,
 };