]> git.ipfire.org Git - thirdparty/iproute2.git/commitdiff
Update kernel headers
authorDavid Ahern <dsahern@kernel.org>
Fri, 15 Oct 2021 23:49:19 +0000 (17:49 -0600)
committerDavid Ahern <dsahern@kernel.org>
Fri, 15 Oct 2021 23:49:19 +0000 (17:49 -0600)
Update kernel headers to commit:
    295711fa8fec ("Merge branch 'dpaa2-irq-coalescing'")

Signed-off-by: David Ahern <dsahern@kernel.org>
include/uapi/linux/mptcp.h
include/uapi/linux/neighbour.h
include/uapi/linux/pkt_sched.h
include/uapi/linux/xfrm.h

index 957743ce5f8a0d28cbad2d5a99f60bffb49df99f..498e0ebb0e29d85c80af89205758b915beef51e5 100644 (file)
@@ -4,6 +4,11 @@
 
 #include <linux/const.h>
 #include <linux/types.h>
+#include <linux/in.h>          /* for sockaddr_in                      */
+#include <linux/in6.h>         /* for sockaddr_in6                     */
+#include <linux/socket.h>      /* for sockaddr_storage and sa_family   */
+
+#include <sys/socket.h>                /* for struct sockaddr                  */
 
 #define MPTCP_SUBFLOW_FLAG_MCAP_REM            _BITUL(0)
 #define MPTCP_SUBFLOW_FLAG_MCAP_LOC            _BITUL(1)
@@ -193,4 +198,32 @@ enum mptcp_event_attr {
 #define MPTCP_RST_EBADPERF     5
 #define MPTCP_RST_EMIDDLEBOX   6
 
+struct mptcp_subflow_data {
+       __u32           size_subflow_data;              /* size of this structure in userspace */
+       __u32           num_subflows;                   /* must be 0, set by kernel */
+       __u32           size_kernel;                    /* must be 0, set by kernel */
+       __u32           size_user;                      /* size of one element in data[] */
+} __attribute__((aligned(8)));
+
+struct mptcp_subflow_addrs {
+       union {
+               __kernel_sa_family_t sa_family;
+               struct sockaddr sa_local;
+               struct sockaddr_in sin_local;
+               struct sockaddr_in6 sin6_local;
+               struct __kernel_sockaddr_storage ss_local;
+       };
+       union {
+               struct sockaddr sa_remote;
+               struct sockaddr_in sin_remote;
+               struct sockaddr_in6 sin6_remote;
+               struct __kernel_sockaddr_storage ss_remote;
+       };
+};
+
+/* MPTCP socket options */
+#define MPTCP_INFO             1
+#define MPTCP_TCPINFO          2
+#define MPTCP_SUBFLOW_ADDRS    3
+
 #endif /* _MPTCP_H */
index 00a60695fa5388f2150c111d23698cb7a0580d39..db05fb55055e94c2e3853e75bff33df105247360 100644 (file)
@@ -31,6 +31,7 @@ enum {
        NDA_PROTOCOL,  /* Originator of entry */
        NDA_NH_ID,
        NDA_FDB_EXT_ATTRS,
+       NDA_FLAGS_EXT,
        __NDA_MAX
 };
 
@@ -40,14 +41,16 @@ enum {
  *     Neighbor Cache Entry Flags
  */
 
-#define NTF_USE                0x01
-#define NTF_SELF       0x02
-#define NTF_MASTER     0x04
-#define NTF_PROXY      0x08    /* == ATF_PUBL */
-#define NTF_EXT_LEARNED        0x10
-#define NTF_OFFLOADED   0x20
-#define NTF_STICKY     0x40
-#define NTF_ROUTER     0x80
+#define NTF_USE                (1 << 0)
+#define NTF_SELF       (1 << 1)
+#define NTF_MASTER     (1 << 2)
+#define NTF_PROXY      (1 << 3)        /* == ATF_PUBL */
+#define NTF_EXT_LEARNED        (1 << 4)
+#define NTF_OFFLOADED   (1 << 5)
+#define NTF_STICKY     (1 << 6)
+#define NTF_ROUTER     (1 << 7)
+/* Extended flags under NDA_FLAGS_EXT: */
+#define NTF_EXT_MANAGED        (1 << 0)
 
 /*
  *     Neighbor Cache Entry States.
@@ -65,12 +68,22 @@ enum {
 #define NUD_PERMANENT  0x80
 #define NUD_NONE       0x00
 
-/* NUD_NOARP & NUD_PERMANENT are pseudostates, they never change
- * and make no address resolution or NUD.
- * NUD_PERMANENT also cannot be deleted by garbage collectors.
+/* NUD_NOARP & NUD_PERMANENT are pseudostates, they never change and make no
+ * address resolution or NUD.
+ *
+ * NUD_PERMANENT also cannot be deleted by garbage collectors. This holds true
+ * for dynamic entries with NTF_EXT_LEARNED flag as well. However, upon carrier
+ * down event, NUD_PERMANENT entries are not flushed whereas NTF_EXT_LEARNED
+ * flagged entries explicitly are (which is also consistent with the routing
+ * subsystem).
+ *
  * When NTF_EXT_LEARNED is set for a bridge fdb entry the different cache entry
  * states don't make sense and thus are ignored. Such entries don't age and
  * can roam.
+ *
+ * NTF_EXT_MANAGED flagged neigbor entries are managed by the kernel on behalf
+ * of a user space control plane, and automatically refreshed so that (if
+ * possible) they remain in NUD_REACHABLE state.
  */
 
 struct nda_cacheinfo {
index ec88590b3198441f18cc9def7bd40c48f0bc82a1..6be9a84cccfa79bace1f3f7123d02f484b67a25e 100644 (file)
@@ -840,6 +840,7 @@ enum {
        TCA_FQ_CODEL_CE_THRESHOLD,
        TCA_FQ_CODEL_DROP_BATCH_SIZE,
        TCA_FQ_CODEL_MEMORY_LIMIT,
+       TCA_FQ_CODEL_CE_THRESHOLD_ECT1,
        __TCA_FQ_CODEL_MAX
 };
 
index ecd06396eb16b74aca966aecab48c08216cef7c5..378b4092f26a9ffadf76a504e8f662e1b65f758a 100644 (file)
@@ -213,13 +213,13 @@ enum {
        XFRM_MSG_GETSPDINFO,
 #define XFRM_MSG_GETSPDINFO XFRM_MSG_GETSPDINFO
 
+       XFRM_MSG_MAPPING,
+#define XFRM_MSG_MAPPING XFRM_MSG_MAPPING
+
        XFRM_MSG_SETDEFAULT,
 #define XFRM_MSG_SETDEFAULT XFRM_MSG_SETDEFAULT
        XFRM_MSG_GETDEFAULT,
 #define XFRM_MSG_GETDEFAULT XFRM_MSG_GETDEFAULT
-
-       XFRM_MSG_MAPPING,
-#define XFRM_MSG_MAPPING XFRM_MSG_MAPPING
        __XFRM_MSG_MAX
 };
 #define XFRM_MSG_MAX (__XFRM_MSG_MAX - 1)
@@ -514,9 +514,12 @@ struct xfrm_user_offload {
 #define XFRM_OFFLOAD_INBOUND   2
 
 struct xfrm_userpolicy_default {
-#define XFRM_USERPOLICY_DIRMASK_MAX    (sizeof(__u8) * 8)
-       __u8                            dirmask;
-       __u8                            action;
+#define XFRM_USERPOLICY_UNSPEC 0
+#define XFRM_USERPOLICY_BLOCK  1
+#define XFRM_USERPOLICY_ACCEPT 2
+       __u8                            in;
+       __u8                            fwd;
+       __u8                            out;
 };
 
 /* backwards compatibility for userspace */