Blame SOURCES/0101-Update-kernel-headers.patch

81ae37
From 8779ea3cf3f1d80a29951b217f8c6a454f0a2c5a Mon Sep 17 00:00:00 2001
81ae37
From: Yishai Hadas <yishaih@mellanox.com>
81ae37
Date: Sun, 10 Feb 2019 10:43:12 +0200
81ae37
Subject: [PATCH rdma-core 1/2] Update kernel headers
81ae37
81ae37
To commit 2c1619edef61 ("IB/cma: Define option to set ack timeout and
81ae37
pack tos_set")
81ae37
81ae37
Signed-off-by: Yishai Hadas <yishaih@mellanox.com>
81ae37
---
81ae37
 kernel-headers/rdma/bnxt_re-abi.h   | 11 ++++++
81ae37
 kernel-headers/rdma/ib_user_verbs.h |  2 ++
81ae37
 kernel-headers/rdma/rdma_netlink.h  | 54 +++++++++++++++++++++--------
81ae37
 kernel-headers/rdma/rdma_user_cm.h  |  4 +++
81ae37
 kernel-headers/rdma/rdma_user_rxe.h |  3 +-
81ae37
 5 files changed, 58 insertions(+), 16 deletions(-)
81ae37
81ae37
diff --git a/kernel-headers/rdma/bnxt_re-abi.h b/kernel-headers/rdma/bnxt_re-abi.h
81ae37
index a7a6111e..dc52e3cf 100644
81ae37
--- a/kernel-headers/rdma/bnxt_re-abi.h
81ae37
+++ b/kernel-headers/rdma/bnxt_re-abi.h
81ae37
@@ -44,6 +44,14 @@
81ae37
 
81ae37
 #define BNXT_RE_ABI_VERSION	1
81ae37
 
81ae37
+#define BNXT_RE_CHIP_ID0_CHIP_NUM_SFT		0x00
81ae37
+#define BNXT_RE_CHIP_ID0_CHIP_REV_SFT		0x10
81ae37
+#define BNXT_RE_CHIP_ID0_CHIP_MET_SFT		0x18
81ae37
+
81ae37
+enum {
81ae37
+	BNXT_RE_UCNTX_CMASK_HAVE_CCTX = 0x1ULL
81ae37
+};
81ae37
+
81ae37
 struct bnxt_re_uctx_resp {
81ae37
 	__u32 dev_id;
81ae37
 	__u32 max_qp;
81ae37
@@ -51,6 +59,9 @@ struct bnxt_re_uctx_resp {
81ae37
 	__u32 cqe_sz;
81ae37
 	__u32 max_cqd;
81ae37
 	__u32 rsvd;
81ae37
+	__aligned_u64 comp_mask;
81ae37
+	__u32 chip_id0;
81ae37
+	__u32 chip_id1;
81ae37
 };
81ae37
 
81ae37
 /*
81ae37
diff --git a/kernel-headers/rdma/ib_user_verbs.h b/kernel-headers/rdma/ib_user_verbs.h
81ae37
index 480d9a60..0474c740 100644
81ae37
--- a/kernel-headers/rdma/ib_user_verbs.h
81ae37
+++ b/kernel-headers/rdma/ib_user_verbs.h
81ae37
@@ -270,6 +270,8 @@ struct ib_uverbs_ex_query_device_resp {
81ae37
 	struct ib_uverbs_tm_caps tm_caps;
81ae37
 	struct ib_uverbs_cq_moderation_caps cq_moderation_caps;
81ae37
 	__aligned_u64 max_dm_size;
81ae37
+	__u32 xrc_odp_caps;
81ae37
+	__u32 reserved;
81ae37
 };
81ae37
 
81ae37
 struct ib_uverbs_query_port {
81ae37
diff --git a/kernel-headers/rdma/rdma_netlink.h b/kernel-headers/rdma/rdma_netlink.h
81ae37
index 2e18b77a..3a9e681e 100644
81ae37
--- a/kernel-headers/rdma/rdma_netlink.h
81ae37
+++ b/kernel-headers/rdma/rdma_netlink.h
81ae37
@@ -5,8 +5,7 @@
81ae37
 #include <linux/types.h>
81ae37
 
81ae37
 enum {
81ae37
-	RDMA_NL_RDMA_CM = 1,
81ae37
-	RDMA_NL_IWCM,
81ae37
+	RDMA_NL_IWCM = 2,
81ae37
 	RDMA_NL_RSVD,
81ae37
 	RDMA_NL_LS,	/* RDMA Local Services */
81ae37
 	RDMA_NL_NLDEV,	/* RDMA device interface */
81ae37
@@ -14,8 +13,7 @@ enum {
81ae37
 };
81ae37
 
81ae37
 enum {
81ae37
-	RDMA_NL_GROUP_CM = 1,
81ae37
-	RDMA_NL_GROUP_IWPM,
81ae37
+	RDMA_NL_GROUP_IWPM = 2,
81ae37
 	RDMA_NL_GROUP_LS,
81ae37
 	RDMA_NL_NUM_GROUPS
81ae37
 };
81ae37
@@ -24,15 +22,17 @@ enum {
81ae37
 #define RDMA_NL_GET_OP(type) (type & ((1 << 10) - 1))
81ae37
 #define RDMA_NL_GET_TYPE(client, op) ((client << 10) + op)
81ae37
 
81ae37
-enum {
81ae37
-	RDMA_NL_RDMA_CM_ID_STATS = 0,
81ae37
-	RDMA_NL_RDMA_CM_NUM_OPS
81ae37
-};
81ae37
+/* The minimum version that the iwpm kernel supports */
81ae37
+#define IWPM_UABI_VERSION_MIN	3
81ae37
 
81ae37
+/* The latest version that the iwpm kernel supports */
81ae37
+#define IWPM_UABI_VERSION	4
81ae37
+
81ae37
+/* iwarp port mapper message flags */
81ae37
 enum {
81ae37
-	RDMA_NL_RDMA_CM_ATTR_SRC_ADDR = 1,
81ae37
-	RDMA_NL_RDMA_CM_ATTR_DST_ADDR,
81ae37
-	RDMA_NL_RDMA_CM_NUM_ATTR,
81ae37
+
81ae37
+	/* Do not map the port for this IWPM request */
81ae37
+	IWPM_FLAGS_NO_PORT_MAP = (1 << 0),
81ae37
 };
81ae37
 
81ae37
 /* iwarp port mapper op-codes */
81ae37
@@ -45,6 +45,7 @@ enum {
81ae37
 	RDMA_NL_IWPM_HANDLE_ERR,
81ae37
 	RDMA_NL_IWPM_MAPINFO,
81ae37
 	RDMA_NL_IWPM_MAPINFO_NUM,
81ae37
+	RDMA_NL_IWPM_HELLO,
81ae37
 	RDMA_NL_IWPM_NUM_OPS
81ae37
 };
81ae37
 
81ae37
@@ -83,20 +84,38 @@ enum {
81ae37
 	IWPM_NLA_MANAGE_MAPPING_UNSPEC = 0,
81ae37
 	IWPM_NLA_MANAGE_MAPPING_SEQ,
81ae37
 	IWPM_NLA_MANAGE_ADDR,
81ae37
-	IWPM_NLA_MANAGE_MAPPED_LOC_ADDR,
81ae37
+	IWPM_NLA_MANAGE_FLAGS,
81ae37
+	IWPM_NLA_MANAGE_MAPPING_MAX
81ae37
+};
81ae37
+
81ae37
+enum {
81ae37
+	IWPM_NLA_RMANAGE_MAPPING_UNSPEC = 0,
81ae37
+	IWPM_NLA_RMANAGE_MAPPING_SEQ,
81ae37
+	IWPM_NLA_RMANAGE_ADDR,
81ae37
+	IWPM_NLA_RMANAGE_MAPPED_LOC_ADDR,
81ae37
+	/* The following maintains bisectability of rdma-core */
81ae37
+	IWPM_NLA_MANAGE_MAPPED_LOC_ADDR = IWPM_NLA_RMANAGE_MAPPED_LOC_ADDR,
81ae37
 	IWPM_NLA_RMANAGE_MAPPING_ERR,
81ae37
 	IWPM_NLA_RMANAGE_MAPPING_MAX
81ae37
 };
81ae37
 
81ae37
-#define IWPM_NLA_MANAGE_MAPPING_MAX 3
81ae37
-#define IWPM_NLA_QUERY_MAPPING_MAX  4
81ae37
 #define IWPM_NLA_MAPINFO_SEND_MAX   3
81ae37
+#define IWPM_NLA_REMOVE_MAPPING_MAX 3
81ae37
 
81ae37
 enum {
81ae37
 	IWPM_NLA_QUERY_MAPPING_UNSPEC = 0,
81ae37
 	IWPM_NLA_QUERY_MAPPING_SEQ,
81ae37
 	IWPM_NLA_QUERY_LOCAL_ADDR,
81ae37
 	IWPM_NLA_QUERY_REMOTE_ADDR,
81ae37
+	IWPM_NLA_QUERY_FLAGS,
81ae37
+	IWPM_NLA_QUERY_MAPPING_MAX,
81ae37
+};
81ae37
+
81ae37
+enum {
81ae37
+	IWPM_NLA_RQUERY_MAPPING_UNSPEC = 0,
81ae37
+	IWPM_NLA_RQUERY_MAPPING_SEQ,
81ae37
+	IWPM_NLA_RQUERY_LOCAL_ADDR,
81ae37
+	IWPM_NLA_RQUERY_REMOTE_ADDR,
81ae37
 	IWPM_NLA_RQUERY_MAPPED_LOC_ADDR,
81ae37
 	IWPM_NLA_RQUERY_MAPPED_REM_ADDR,
81ae37
 	IWPM_NLA_RQUERY_MAPPING_ERR,
81ae37
@@ -114,6 +133,7 @@ enum {
81ae37
 	IWPM_NLA_MAPINFO_UNSPEC = 0,
81ae37
 	IWPM_NLA_MAPINFO_LOCAL_ADDR,
81ae37
 	IWPM_NLA_MAPINFO_MAPPED_ADDR,
81ae37
+	IWPM_NLA_MAPINFO_FLAGS,
81ae37
 	IWPM_NLA_MAPINFO_MAX
81ae37
 };
81ae37
 
81ae37
@@ -132,6 +152,12 @@ enum {
81ae37
 	IWPM_NLA_ERR_MAX
81ae37
 };
81ae37
 
81ae37
+enum {
81ae37
+	IWPM_NLA_HELLO_UNSPEC = 0,
81ae37
+	IWPM_NLA_HELLO_ABI_VERSION,
81ae37
+	IWPM_NLA_HELLO_MAX
81ae37
+};
81ae37
+
81ae37
 /*
81ae37
  * Local service operations:
81ae37
  *   RESOLVE - The client requests the local service to resolve a path.
81ae37
diff --git a/kernel-headers/rdma/rdma_user_cm.h b/kernel-headers/rdma/rdma_user_cm.h
81ae37
index 0d1e78eb..e42940a2 100644
81ae37
--- a/kernel-headers/rdma/rdma_user_cm.h
81ae37
+++ b/kernel-headers/rdma/rdma_user_cm.h
81ae37
@@ -300,6 +300,10 @@ enum {
81ae37
 	RDMA_OPTION_ID_TOS	 = 0,
81ae37
 	RDMA_OPTION_ID_REUSEADDR = 1,
81ae37
 	RDMA_OPTION_ID_AFONLY	 = 2,
81ae37
+	RDMA_OPTION_ID_ACK_TIMEOUT = 3
81ae37
+};
81ae37
+
81ae37
+enum {
81ae37
 	RDMA_OPTION_IB_PATH	 = 1
81ae37
 };
81ae37
 
81ae37
diff --git a/kernel-headers/rdma/rdma_user_rxe.h b/kernel-headers/rdma/rdma_user_rxe.h
81ae37
index 44ef6a3b..aae2e696 100644
81ae37
--- a/kernel-headers/rdma/rdma_user_rxe.h
81ae37
+++ b/kernel-headers/rdma/rdma_user_rxe.h
81ae37
@@ -58,8 +58,7 @@ struct rxe_global_route {
81ae37
 struct rxe_av {
81ae37
 	__u8			port_num;
81ae37
 	__u8			network_type;
81ae37
-	__u16			reserved1;
81ae37
-	__u32			reserved2;
81ae37
+	__u8			dmac[6];
81ae37
 	struct rxe_global_route	grh;
81ae37
 	union {
81ae37
 		struct sockaddr_in	_sockaddr_in;
81ae37
-- 
81ae37
2.20.1
81ae37