History

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma

Pull rdma updates from Jason Gunthorpe: "Usual collection of small improvements and fixes, nothing especially stands out to me here. The new multipath PCI feature is a sign of things to come, I think we will see more of this in the next 10 years. Broadcom and HNS continue to update their drivers for their new HW generations. Summary: - Bug fixes and minor improvments in cxgb4, siw, mlx5, rxe, efa, rts, hfi, erdma, hns, irdma - Code cleanups/typos/etc. Tidy alloc_ordered_workqueue() calls - Multipath PCI for mlx5 - Variable size work queue, SRQ changes, and relaxed ordering for new bnxt HW - New ODP fault resolution FW protocol in mlx5 - New 'rdma monitor' netlink mechanism" * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma: (99 commits) RDMA/bnxt_re: Remove the unused variable en_dev RDMA/nldev: Add missing break in rdma_nl_notify_err_msg() RDMA/irdma: fix error message in irdma_modify_qp_roce() RDMA/cxgb4: Added NULL check for lookup_atid RDMA/hns: Fix ah error counter in sw stat not increasing RDMA/bnxt_re: Recover the device when FW error is detected RDMA/bnxt_re: Group all operations under add_device and remove_device RDMA/bnxt_re: Use the aux device for L2 ULP callbacks RDMA/bnxt_re: Change aux driver data to en_info to hold more information RDMA/nldev: Expose whether RDMA monitoring is supported RDMA/nldev: Add support for RDMA monitoring RDMA/mlx5: Use IB set_netdev and get_netdev functions RDMA/device: Remove optimization in ib_device_get_netdev() RDMA/mlx5: Initialize phys_port_cnt earlier in RDMA device creation RDMA/mlx5: Obtain upper net device only when needed RDMA/mlx5: Check RoCE LAG status before getting netdev RDMA/mlx5: Consider the query_vuid cap for data_direct net/mlx5: Handle memory scheme ODP capabilities RDMA/mlx5: Add implicit MR handling to ODP memory scheme RDMA/mlx5: Add handling for memory scheme page fault events ...

Linus Torvalds committed 2 years ago

Commit 54d7e812 parents 6fa6588 709209483 files · +2796 −896Browse files

Showing the changes to include/uapi (4 of 83 files). Show all

Unified · Split

4 files
  1. include/uapi/rdma/bnxt_re-abi.h +13 −0
  2. include/uapi/rdma/mlx5_user_ioctl_cmds.h +9 −0
  3. include/uapi/rdma/mlx5_user_ioctl_verbs.h +4 −0
  4. include/uapi/rdma/rdma_netlink.h +16 −0
include/uapi/rdma/bnxt_re-abi.h+13−0
@@ -66,6 +66,7 @@ enum bnxt_re_wqe_mode { · 65 unmodified lines
6666
6767 enum {
6868 BNXT_RE_COMP_MASK_REQ_UCNTX_POW2_SUPPORT = 0x01,
69+ BNXT_RE_COMP_MASK_REQ_UCNTX_VAR_WQE_SUPPORT = 0x02,
6970 };
7071
7172 struct bnxt_re_uctx_req {
@@ -118,10 +119,16 @@ struct bnxt_re_resize_cq_req { · 46 unmodified lines
118119 __aligned_u64 cq_va;
119120 };
120121
122+enum bnxt_re_qp_mask {
123+ BNXT_RE_QP_REQ_MASK_VAR_WQE_SQ_SLOTS = 0x1,
124+};
125+
121126 struct bnxt_re_qp_req {
122127 __aligned_u64 qpsva;
123128 __aligned_u64 qprva;
124129 __aligned_u64 qp_handle;
130+ __aligned_u64 comp_mask;
131+ __u32 sq_slots;
125132 };
126133
127134 struct bnxt_re_qp_resp {
@@ -134,8 +141,14 @@ struct bnxt_re_srq_req { · 6 unmodified lines
134141 __aligned_u64 srq_handle;
135142 };
136143
144+enum bnxt_re_srq_mask {
145+ BNXT_RE_SRQ_TOGGLE_PAGE_SUPPORT = 0x1,
146+};
147+
137148 struct bnxt_re_srq_resp {
138149 __u32 srqid;
150+ __u32 rsvd; /* padding */
151+ __aligned_u64 comp_mask;
139152 };
140153
141154 enum bnxt_re_shpg_offt {
include/uapi/rdma/mlx5_user_ioctl_cmds.h+9−0
@@ -274,6 +274,10 @@ enum mlx5_ib_create_cq_attrs { · 273 unmodified lines
274274 MLX5_IB_ATTR_CREATE_CQ_UAR_INDEX = UVERBS_ID_DRIVER_NS_WITH_UHW,
275275 };
276276
277+enum mlx5_ib_reg_dmabuf_mr_attrs {
278+ MLX5_IB_ATTR_REG_DMABUF_MR_ACCESS_FLAGS = (1U << UVERBS_ID_NS_SHIFT),
279+};
280+
277281 #define MLX5_IB_DW_MATCH_PARAM 0xA0
278282
279283 struct mlx5_ib_match_params {
@@ -344,6 +348,7 @@ enum mlx5_ib_pd_methods { · 64 unmodified lines
344348
345349 enum mlx5_ib_device_methods {
346350 MLX5_IB_METHOD_QUERY_PORT = (1U << UVERBS_ID_NS_SHIFT),
351+ MLX5_IB_METHOD_GET_DATA_DIRECT_SYSFS_PATH,
347352 };
348353
349354 enum mlx5_ib_query_port_attrs {
@@ -351,4 +356,8 @@ enum mlx5_ib_query_port_attrs { · 1 unmodified line
351356 MLX5_IB_ATTR_QUERY_PORT,
352357 };
353358
359+enum mlx5_ib_get_data_direct_sysfs_path_attrs {
360+ MLX5_IB_ATTR_GET_DATA_DIRECT_SYSFS_PATH = (1U << UVERBS_ID_NS_SHIFT),
361+};
362+
354363 #endif
include/uapi/rdma/mlx5_user_ioctl_verbs.h+4−0
@@ -54,6 +54,10 @@ enum mlx5_ib_uapi_flow_action_packet_reformat_type { · 53 unmodified lines
5454 MLX5_IB_UAPI_FLOW_ACTION_PACKET_REFORMAT_TYPE_L2_TO_L3_TUNNEL = 0x3,
5555 };
5656
57+enum mlx5_ib_uapi_reg_dmabuf_flags {
58+ MLX5_IB_UAPI_REG_DMABUF_ACCESS_DATA_DIRECT = 1 << 0,
59+};
60+
5761 struct mlx5_ib_uapi_devx_async_cmd_hdr {
5862 __aligned_u64 wr_id;
5963 __u8 out_data[];
include/uapi/rdma/rdma_netlink.h+16−0
@@ -15,6 +15,7 @@ enum { · 14 unmodified lines
1515 enum {
1616 RDMA_NL_GROUP_IWPM = 2,
1717 RDMA_NL_GROUP_LS,
18+ RDMA_NL_GROUP_NOTIFY,
1819 RDMA_NL_NUM_GROUPS
1920 };
2021
@@ -305,6 +306,8 @@ enum rdma_nldev_command { · 284 unmodified lines
305306
306307 RDMA_NLDEV_CMD_DELDEV,
307308
309+ RDMA_NLDEV_CMD_MONITOR,
310+
308311 RDMA_NLDEV_NUM_OPS
309312 };
310313
@@ -574,6 +577,9 @@ enum rdma_nldev_attr { · 263 unmodified lines
574577
575578 RDMA_NLDEV_ATTR_NAME_ASSIGN_TYPE, /* u8 */
576579
580+ RDMA_NLDEV_ATTR_EVENT_TYPE, /* u8 */
581+
582+ RDMA_NLDEV_SYS_ATTR_MONITOR_MODE, /* u8 */
577583 /*
578584 * Always the end
579585 */
@@ -624,4 +630,14 @@ enum rdma_nl_name_assign_type { · 44 unmodified lines
624630 RDMA_NAME_ASSIGN_TYPE_USER = 1, /* Provided by user-space */
625631 };
626632
633+/*
634+ * Supported rdma monitoring event types.
635+ */
636+enum rdma_nl_notify_event_type {
637+ RDMA_REGISTER_EVENT,
638+ RDMA_UNREGISTER_EVENT,
639+ RDMA_NETDEV_ATTACH_EVENT,
640+ RDMA_NETDEV_DETACH_EVENT,
641+};
642+
627643 #endif /* _UAPI_RDMA_NETLINK_H */