aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Gunthorpe <jgg@nvidia.com>2020-10-03 20:20:09 -0300
committerJason Gunthorpe <jgg@nvidia.com>2020-10-26 19:27:59 -0300
commitbd2a40cc2463766ed1a55d94a4ccbdcd621da323 (patch)
tree519dc94c1815aafe2b3e823a18e25c9f1265b55c
parentRDMA: Check create_flags during create_qp (diff)
downloadlinux-dev-bd2a40cc2463766ed1a55d94a4ccbdcd621da323.tar.xz
linux-dev-bd2a40cc2463766ed1a55d94a4ccbdcd621da323.zip
RDMA/core Remove uverbs_ex_cmd_mask
No driver sets it, and the core code sets a maximum mask, simply remove it. Disabled operations are now handled either by having a NULL ops pointer, or by having the common driver callbacks check for unsupported extended attributes. Link: https://lore.kernel.org/r/9-v1-caa70ba3d1ab+1436e-ucmd_mask_jgg@nvidia.com Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
-rw-r--r--drivers/infiniband/core/device.c15
-rw-r--r--drivers/infiniband/core/uverbs_uapi.c5
-rw-r--r--include/rdma/ib_verbs.h1
3 files changed, 1 insertions, 20 deletions
diff --git a/drivers/infiniband/core/device.c b/drivers/infiniband/core/device.c
index e5f5d656951d..939664765536 100644
--- a/drivers/infiniband/core/device.c
+++ b/drivers/infiniband/core/device.c
@@ -630,21 +630,6 @@ struct ib_device *_ib_alloc_device(size_t size)
BIT_ULL(IB_USER_VERBS_CMD_REG_MR) |
BIT_ULL(IB_USER_VERBS_CMD_REREG_MR) |
BIT_ULL(IB_USER_VERBS_CMD_RESIZE_CQ);
-
- device->uverbs_ex_cmd_mask =
- BIT_ULL(IB_USER_VERBS_EX_CMD_CREATE_CQ) |
- BIT_ULL(IB_USER_VERBS_EX_CMD_CREATE_FLOW) |
- BIT_ULL(IB_USER_VERBS_EX_CMD_CREATE_QP) |
- BIT_ULL(IB_USER_VERBS_EX_CMD_CREATE_RWQ_IND_TBL) |
- BIT_ULL(IB_USER_VERBS_EX_CMD_CREATE_WQ) |
- BIT_ULL(IB_USER_VERBS_EX_CMD_DESTROY_FLOW) |
- BIT_ULL(IB_USER_VERBS_EX_CMD_DESTROY_RWQ_IND_TBL) |
- BIT_ULL(IB_USER_VERBS_EX_CMD_DESTROY_WQ) |
- BIT_ULL(IB_USER_VERBS_EX_CMD_MODIFY_CQ) |
- BIT_ULL(IB_USER_VERBS_EX_CMD_MODIFY_QP) |
- BIT_ULL(IB_USER_VERBS_EX_CMD_MODIFY_WQ) |
- BIT_ULL(IB_USER_VERBS_EX_CMD_QUERY_DEVICE);
-
return device;
}
EXPORT_SYMBOL(_ib_alloc_device);
diff --git a/drivers/infiniband/core/uverbs_uapi.c b/drivers/infiniband/core/uverbs_uapi.c
index 5addc8fae3f3..62f5bcb712cf 100644
--- a/drivers/infiniband/core/uverbs_uapi.c
+++ b/drivers/infiniband/core/uverbs_uapi.c
@@ -79,10 +79,7 @@ static int uapi_create_write(struct uverbs_api *uapi,
method_elm->is_ex = def->write.is_ex;
method_elm->handler = def->func_write;
- if (def->write.is_ex)
- method_elm->disabled = !(ibdev->uverbs_ex_cmd_mask &
- BIT_ULL(def->write.command_num));
- else
+ if (!def->write.is_ex)
method_elm->disabled = !(ibdev->uverbs_cmd_mask &
BIT_ULL(def->write.command_num));
diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h
index 0f9ce27bedcb..c7c6b06171e9 100644
--- a/include/rdma/ib_verbs.h
+++ b/include/rdma/ib_verbs.h
@@ -2667,7 +2667,6 @@ struct ib_device {
const struct attribute_group *groups[3];
u64 uverbs_cmd_mask;
- u64 uverbs_ex_cmd_mask;
char node_desc[IB_DEVICE_NODE_DESC_MAX];
__be64 node_guid;