]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
RDMA: Move more uverbs_cmd_mask settings to the core
authorJason Gunthorpe <jgg@nvidia.com>
Sat, 3 Oct 2020 23:20:04 +0000 (20:20 -0300)
committerJason Gunthorpe <jgg@nvidia.com>
Mon, 26 Oct 2020 22:27:58 +0000 (19:27 -0300)
These functions all depend on the driver providing a specific op:

- REREG_MR is rereg_user_mr(). bnxt_re set this without providing the op
- ATTACH/DEATCH_MCAST is attach_mcast()/detach_mcast(). usnic set this
  without providing the op
- OPEN_QP doesn't involve the driver but requires a XRCD. qedr provides
  xrcd but forgot to set it, usnic doesn't provide XRCD but set it anyhow.
- OPEN/CLOSE_XRCD are the ops alloc_xrcd()/dealloc_xrcd()
- CREATE_SRQ/DESTROY_SRQ are the ops create_srq()/destroy_srq()
- QUERY/MODIFY_SRQ is op query_srq()/modify_srq(). hns sets this but
  sometimes supplies a NULL op.
- RESIZE_CQ is op resize_cq(). bnxt_re sets this boes doesn't supply an op
- ALLOC/DEALLOC_MW is alloc_mw()/dealloc_mw(). cxgb4 provided an
  (now deleted) implementation but no userspace

All drivers were checked that no drivers provide the op without also
setting uverbs_cmd_mask so this should have no functional change.

Link: https://lore.kernel.org/r/4-v1-caa70ba3d1ab+1436e-ucmd_mask_jgg@nvidia.com
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
15 files changed:
drivers/infiniband/core/device.c
drivers/infiniband/core/uverbs_cmd.c
drivers/infiniband/hw/bnxt_re/main.c
drivers/infiniband/hw/cxgb4/provider.c
drivers/infiniband/hw/hns/hns_roce_main.c
drivers/infiniband/hw/mlx4/main.c
drivers/infiniband/hw/mlx5/main.c
drivers/infiniband/hw/mthca/mthca_provider.c
drivers/infiniband/hw/ocrdma/ocrdma_main.c
drivers/infiniband/hw/qedr/main.c
drivers/infiniband/hw/usnic/usnic_ib_main.c
drivers/infiniband/hw/vmw_pvrdma/pvrdma_main.c
drivers/infiniband/sw/rdmavt/vt.c
drivers/infiniband/sw/rxe/rxe_verbs.c
drivers/infiniband/sw/siw/siw_main.c

index f99548de881fc1e2be1a31bb14998828f1b82133..9e925369215c454238ba053c5c1305464512f071 100644 (file)
@@ -284,6 +284,7 @@ static void ib_device_check_mandatory(struct ib_device *device)
                IB_MANDATORY_FUNC(poll_cq),
                IB_MANDATORY_FUNC(req_notify_cq),
                IB_MANDATORY_FUNC(get_dma_mr),
+               IB_MANDATORY_FUNC(reg_user_mr),
                IB_MANDATORY_FUNC(dereg_mr),
                IB_MANDATORY_FUNC(get_port_immutable)
        };
@@ -601,20 +602,33 @@ struct ib_device *_ib_alloc_device(size_t size)
        INIT_WORK(&device->unregistration_work, ib_unregister_work);
 
        device->uverbs_cmd_mask =
+               BIT_ULL(IB_USER_VERBS_CMD_ALLOC_MW) |
                BIT_ULL(IB_USER_VERBS_CMD_ALLOC_PD) |
+               BIT_ULL(IB_USER_VERBS_CMD_ATTACH_MCAST) |
+               BIT_ULL(IB_USER_VERBS_CMD_CLOSE_XRCD) |
                BIT_ULL(IB_USER_VERBS_CMD_CREATE_COMP_CHANNEL) |
                BIT_ULL(IB_USER_VERBS_CMD_CREATE_CQ) |
                BIT_ULL(IB_USER_VERBS_CMD_CREATE_QP) |
+               BIT_ULL(IB_USER_VERBS_CMD_CREATE_SRQ) |
+               BIT_ULL(IB_USER_VERBS_CMD_DEALLOC_MW) |
                BIT_ULL(IB_USER_VERBS_CMD_DEALLOC_PD) |
                BIT_ULL(IB_USER_VERBS_CMD_DEREG_MR) |
                BIT_ULL(IB_USER_VERBS_CMD_DESTROY_CQ) |
                BIT_ULL(IB_USER_VERBS_CMD_DESTROY_QP) |
+               BIT_ULL(IB_USER_VERBS_CMD_DESTROY_SRQ) |
+               BIT_ULL(IB_USER_VERBS_CMD_DETACH_MCAST) |
                BIT_ULL(IB_USER_VERBS_CMD_GET_CONTEXT) |
                BIT_ULL(IB_USER_VERBS_CMD_MODIFY_QP) |
+               BIT_ULL(IB_USER_VERBS_CMD_MODIFY_SRQ) |
+               BIT_ULL(IB_USER_VERBS_CMD_OPEN_QP) |
+               BIT_ULL(IB_USER_VERBS_CMD_OPEN_XRCD) |
                BIT_ULL(IB_USER_VERBS_CMD_QUERY_DEVICE) |
                BIT_ULL(IB_USER_VERBS_CMD_QUERY_PORT) |
                BIT_ULL(IB_USER_VERBS_CMD_QUERY_QP) |
-               BIT_ULL(IB_USER_VERBS_CMD_REG_MR);
+               BIT_ULL(IB_USER_VERBS_CMD_QUERY_SRQ) |
+               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_FLOW) |
index 2f3f9b87922e9229a4726bdb1d24d06fddd6167e..f85a61175772967372c0e30c3c23dbbad5ce83f1 100644 (file)
@@ -3999,8 +3999,7 @@ const struct uapi_definition uverbs_def_write_intf[] = {
                DECLARE_UVERBS_WRITE(
                        IB_USER_VERBS_CMD_CLOSE_XRCD,
                        ib_uverbs_close_xrcd,
-                       UAPI_DEF_WRITE_I(struct ib_uverbs_close_xrcd),
-                       UAPI_DEF_METHOD_NEEDS_FN(dealloc_xrcd)),
+                       UAPI_DEF_WRITE_I(struct ib_uverbs_close_xrcd)),
                DECLARE_UVERBS_WRITE(IB_USER_VERBS_CMD_OPEN_QP,
                                     ib_uverbs_open_qp,
                                     UAPI_DEF_WRITE_UDATA_IO(
@@ -4010,8 +4009,9 @@ const struct uapi_definition uverbs_def_write_intf[] = {
                                     ib_uverbs_open_xrcd,
                                     UAPI_DEF_WRITE_UDATA_IO(
                                             struct ib_uverbs_open_xrcd,
-                                            struct ib_uverbs_open_xrcd_resp),
-                                    UAPI_DEF_METHOD_NEEDS_FN(alloc_xrcd))),
+                                            struct ib_uverbs_open_xrcd_resp)),
+               UAPI_DEF_OBJ_NEEDS_FN(alloc_xrcd),
+               UAPI_DEF_OBJ_NEEDS_FN(dealloc_xrcd)),
 
        {},
 };
index 46dac956eead47b7f3da3b6eaaeea391bfc35bfc..47ebbba4a207e615b1e1cbb52f39101d98bc0f15 100644 (file)
@@ -703,12 +703,6 @@ static int bnxt_re_register_ib(struct bnxt_re_dev *rdev)
 
        /* User space */
        ibdev->uverbs_cmd_mask |=
-                       (1ull << IB_USER_VERBS_CMD_REREG_MR)            |
-                       (1ull << IB_USER_VERBS_CMD_RESIZE_CQ)           |
-                       (1ull << IB_USER_VERBS_CMD_CREATE_SRQ)          |
-                       (1ull << IB_USER_VERBS_CMD_MODIFY_SRQ)          |
-                       (1ull << IB_USER_VERBS_CMD_QUERY_SRQ)           |
-                       (1ull << IB_USER_VERBS_CMD_DESTROY_SRQ)         |
                        (1ull << IB_USER_VERBS_CMD_CREATE_AH)           |
                        (1ull << IB_USER_VERBS_CMD_MODIFY_AH)           |
                        (1ull << IB_USER_VERBS_CMD_QUERY_AH)            |
index 3e6ec35f748349511f55311a67bade3cd19c5015..627967dc4fbd004f04c9a223d1709ba6ba0abd0e 100644 (file)
@@ -535,10 +535,7 @@ void c4iw_register_device(struct work_struct *work)
            (1ull << IB_USER_VERBS_CMD_REQ_NOTIFY_CQ) |
            (1ull << IB_USER_VERBS_CMD_POLL_CQ) |
            (1ull << IB_USER_VERBS_CMD_POST_SEND) |
-           (1ull << IB_USER_VERBS_CMD_POST_RECV) |
-           (1ull << IB_USER_VERBS_CMD_CREATE_SRQ) |
-           (1ull << IB_USER_VERBS_CMD_MODIFY_SRQ) |
-           (1ull << IB_USER_VERBS_CMD_DESTROY_SRQ);
+           (1ull << IB_USER_VERBS_CMD_POST_RECV);
        dev->ibdev.node_type = RDMA_NODE_RNIC;
        BUILD_BUG_ON(sizeof(C4IW_NODE_DESC) > IB_DEVICE_NODE_DESC_MAX);
        memcpy(dev->ibdev.node_desc, C4IW_NODE_DESC, sizeof(C4IW_NODE_DESC));
index dc64582a2022f88916aa6ac5a1b7094a60cf3ae3..a56de14626afcdad74811d5eec7d34c244cc4e38 100644 (file)
@@ -492,18 +492,12 @@ static int hns_roce_register_device(struct hns_roce_dev *hr_dev)
        ib_dev->local_dma_lkey = hr_dev->caps.reserved_lkey;
        ib_dev->num_comp_vectors = hr_dev->caps.num_comp_vectors;
 
-       if (hr_dev->caps.flags & HNS_ROCE_CAP_FLAG_REREG_MR) {
-               ib_dev->uverbs_cmd_mask |= (1ULL << IB_USER_VERBS_CMD_REREG_MR);
+       if (hr_dev->caps.flags & HNS_ROCE_CAP_FLAG_REREG_MR)
                ib_set_device_ops(ib_dev, &hns_roce_dev_mr_ops);
-       }
 
        /* MW */
-       if (hr_dev->caps.flags & HNS_ROCE_CAP_FLAG_MW) {
-               ib_dev->uverbs_cmd_mask |=
-                                       (1ULL << IB_USER_VERBS_CMD_ALLOC_MW) |
-                                       (1ULL << IB_USER_VERBS_CMD_DEALLOC_MW);
+       if (hr_dev->caps.flags & HNS_ROCE_CAP_FLAG_MW)
                ib_set_device_ops(ib_dev, &hns_roce_dev_mw_ops);
-       }
 
        /* FRMR */
        if (hr_dev->caps.flags & HNS_ROCE_CAP_FLAG_FRMR)
@@ -512,10 +506,6 @@ static int hns_roce_register_device(struct hns_roce_dev *hr_dev)
        /* SRQ */
        if (hr_dev->caps.flags & HNS_ROCE_CAP_FLAG_SRQ) {
                ib_dev->uverbs_cmd_mask |=
-                               (1ULL << IB_USER_VERBS_CMD_CREATE_SRQ) |
-                               (1ULL << IB_USER_VERBS_CMD_MODIFY_SRQ) |
-                               (1ULL << IB_USER_VERBS_CMD_QUERY_SRQ) |
-                               (1ULL << IB_USER_VERBS_CMD_DESTROY_SRQ) |
                                (1ULL << IB_USER_VERBS_CMD_POST_SRQ_RECV);
                ib_set_device_ops(ib_dev, &hns_roce_dev_srq_ops);
                ib_set_device_ops(ib_dev, hr_dev->hw->hns_roce_dev_srq_ops);
index ad064a23dd2fd721345fd539c8ac3ee9f2464d2e..63007ece56b41677eecbf53dd1bf3779f4a43c1f 100644 (file)
@@ -2658,16 +2658,7 @@ static void *mlx4_ib_add(struct mlx4_dev *dev)
        ibdev->ib_dev.dev.parent        = &dev->persist->pdev->dev;
 
        ibdev->ib_dev.uverbs_cmd_mask |=
-               (1ull << IB_USER_VERBS_CMD_REREG_MR)            |
-               (1ull << IB_USER_VERBS_CMD_RESIZE_CQ)           |
-               (1ull << IB_USER_VERBS_CMD_ATTACH_MCAST)        |
-               (1ull << IB_USER_VERBS_CMD_DETACH_MCAST)        |
-               (1ull << IB_USER_VERBS_CMD_CREATE_SRQ)          |
-               (1ull << IB_USER_VERBS_CMD_MODIFY_SRQ)          |
-               (1ull << IB_USER_VERBS_CMD_QUERY_SRQ)           |
-               (1ull << IB_USER_VERBS_CMD_DESTROY_SRQ)         |
-               (1ull << IB_USER_VERBS_CMD_CREATE_XSRQ)         |
-               (1ull << IB_USER_VERBS_CMD_OPEN_QP);
+               (1ull << IB_USER_VERBS_CMD_CREATE_XSRQ);
 
        ib_set_device_ops(&ibdev->ib_dev, &mlx4_ib_dev_ops);
        ibdev->ib_dev.uverbs_ex_cmd_mask |=
@@ -2682,17 +2673,10 @@ static void *mlx4_ib_add(struct mlx4_dev *dev)
                ib_set_device_ops(&ibdev->ib_dev, &mlx4_ib_dev_wq_ops);
 
        if (dev->caps.flags & MLX4_DEV_CAP_FLAG_MEM_WINDOW ||
-           dev->caps.bmme_flags & MLX4_BMME_FLAG_TYPE_2_WIN) {
-               ibdev->ib_dev.uverbs_cmd_mask |=
-                       (1ull << IB_USER_VERBS_CMD_ALLOC_MW) |
-                       (1ull << IB_USER_VERBS_CMD_DEALLOC_MW);
+           dev->caps.bmme_flags & MLX4_BMME_FLAG_TYPE_2_WIN)
                ib_set_device_ops(&ibdev->ib_dev, &mlx4_ib_dev_mw_ops);
-       }
 
        if (dev->caps.flags & MLX4_DEV_CAP_FLAG_XRC) {
-               ibdev->ib_dev.uverbs_cmd_mask |=
-                       (1ull << IB_USER_VERBS_CMD_OPEN_XRCD) |
-                       (1ull << IB_USER_VERBS_CMD_CLOSE_XRCD);
                ib_set_device_ops(&ibdev->ib_dev, &mlx4_ib_dev_xrc_ops);
        }
 
index 656fffb09ac1b40ecbb5eee5fc38aff2c420e2ed..b17c2c8758f2623ab909fb4ee653f9f1d181a295 100644 (file)
@@ -4142,16 +4142,7 @@ static int mlx5_ib_stage_caps_init(struct mlx5_ib_dev *dev)
        dev->ib_dev.uverbs_cmd_mask |=
                (1ull << IB_USER_VERBS_CMD_CREATE_AH)           |
                (1ull << IB_USER_VERBS_CMD_DESTROY_AH)          |
-               (1ull << IB_USER_VERBS_CMD_REREG_MR)            |
-               (1ull << IB_USER_VERBS_CMD_RESIZE_CQ)           |
-               (1ull << IB_USER_VERBS_CMD_ATTACH_MCAST)        |
-               (1ull << IB_USER_VERBS_CMD_DETACH_MCAST)        |
-               (1ull << IB_USER_VERBS_CMD_CREATE_SRQ)          |
-               (1ull << IB_USER_VERBS_CMD_MODIFY_SRQ)          |
-               (1ull << IB_USER_VERBS_CMD_QUERY_SRQ)           |
-               (1ull << IB_USER_VERBS_CMD_DESTROY_SRQ)         |
-               (1ull << IB_USER_VERBS_CMD_CREATE_XSRQ)         |
-               (1ull << IB_USER_VERBS_CMD_OPEN_QP);
+               (1ull << IB_USER_VERBS_CMD_CREATE_XSRQ);
        dev->ib_dev.uverbs_ex_cmd_mask |=
                (1ull << IB_USER_VERBS_EX_CMD_CREATE_CQ)        |
                (1ull << IB_USER_VERBS_EX_CMD_CREATE_QP)        |
@@ -4167,19 +4158,11 @@ static int mlx5_ib_stage_caps_init(struct mlx5_ib_dev *dev)
 
        dev->umr_fence = mlx5_get_umr_fence(MLX5_CAP_GEN(mdev, umr_fence));
 
-       if (MLX5_CAP_GEN(mdev, imaicl)) {
-               dev->ib_dev.uverbs_cmd_mask |=
-                       (1ull << IB_USER_VERBS_CMD_ALLOC_MW)    |
-                       (1ull << IB_USER_VERBS_CMD_DEALLOC_MW);
+       if (MLX5_CAP_GEN(mdev, imaicl))
                ib_set_device_ops(&dev->ib_dev, &mlx5_ib_dev_mw_ops);
-       }
 
-       if (MLX5_CAP_GEN(mdev, xrc)) {
-               dev->ib_dev.uverbs_cmd_mask |=
-                       (1ull << IB_USER_VERBS_CMD_OPEN_XRCD) |
-                       (1ull << IB_USER_VERBS_CMD_CLOSE_XRCD);
+       if (MLX5_CAP_GEN(mdev, xrc))
                ib_set_device_ops(&dev->ib_dev, &mlx5_ib_dev_xrc_ops);
-       }
 
        if (MLX5_CAP_DEV_MEM(mdev, memic) ||
            MLX5_CAP_GEN_64(dev->mdev, general_obj_types) &
index 86840afcfba63a6cd0a07dba69515d732077ed5b..ea4a8deabfb6ff51c7ca0b852ba72453f662715c 100644 (file)
@@ -1158,22 +1158,12 @@ int mthca_register_device(struct mthca_dev *dev)
        if (ret)
                return ret;
 
-       dev->ib_dev.uverbs_cmd_mask |=
-               (1ull << IB_USER_VERBS_CMD_RESIZE_CQ)           |
-               (1ull << IB_USER_VERBS_CMD_ATTACH_MCAST)        |
-               (1ull << IB_USER_VERBS_CMD_DETACH_MCAST);
        dev->ib_dev.node_type            = RDMA_NODE_IB_CA;
        dev->ib_dev.phys_port_cnt        = dev->limits.num_ports;
        dev->ib_dev.num_comp_vectors     = 1;
        dev->ib_dev.dev.parent           = &dev->pdev->dev;
 
        if (dev->mthca_flags & MTHCA_FLAG_SRQ) {
-               dev->ib_dev.uverbs_cmd_mask     |=
-                       (1ull << IB_USER_VERBS_CMD_CREATE_SRQ)          |
-                       (1ull << IB_USER_VERBS_CMD_MODIFY_SRQ)          |
-                       (1ull << IB_USER_VERBS_CMD_QUERY_SRQ)           |
-                       (1ull << IB_USER_VERBS_CMD_DESTROY_SRQ);
-
                if (mthca_is_memfree(dev))
                        ib_set_device_ops(&dev->ib_dev,
                                          &mthca_dev_arbel_srq_ops);
index e6611a7e8eeb26ac528e4dd64ee0ae70f1e2ef54..b5c8b5a9a0939f40892ff68533a28a506fbe3ed3 100644 (file)
@@ -205,7 +205,6 @@ static int ocrdma_register_device(struct ocrdma_dev *dev)
        memcpy(dev->ibdev.node_desc, OCRDMA_NODE_DESC,
               sizeof(OCRDMA_NODE_DESC));
        dev->ibdev.uverbs_cmd_mask |=
-           OCRDMA_UVERBS(RESIZE_CQ) |
            OCRDMA_UVERBS(REQ_NOTIFY_CQ) |
            OCRDMA_UVERBS(POLL_CQ) |
            OCRDMA_UVERBS(POST_SEND) |
@@ -228,10 +227,6 @@ static int ocrdma_register_device(struct ocrdma_dev *dev)
 
        if (ocrdma_get_asic_type(dev) == OCRDMA_ASIC_GEN_SKH_R) {
                dev->ibdev.uverbs_cmd_mask |=
-                    OCRDMA_UVERBS(CREATE_SRQ) |
-                    OCRDMA_UVERBS(MODIFY_SRQ) |
-                    OCRDMA_UVERBS(QUERY_SRQ) |
-                    OCRDMA_UVERBS(DESTROY_SRQ) |
                     OCRDMA_UVERBS(POST_SRQ_RECV);
 
                ib_set_device_ops(&dev->ibdev, &ocrdma_dev_srq_ops);
index 02058f1516122f93e2fc6824b48882ec0731ad02..a092e73eb39b62efacade8fd68b0c62956ab9fd7 100644 (file)
@@ -189,8 +189,7 @@ static void qedr_roce_register_device(struct qedr_dev *dev)
 
        ib_set_device_ops(&dev->ibdev, &qedr_roce_dev_ops);
 
-       dev->ibdev.uverbs_cmd_mask |= QEDR_UVERBS(OPEN_XRCD) |
-               QEDR_UVERBS(CLOSE_XRCD) |
+       dev->ibdev.uverbs_cmd_mask |=
                QEDR_UVERBS(CREATE_XSRQ);
 }
 
@@ -250,12 +249,7 @@ static int qedr_register_device(struct qedr_dev *dev)
        memcpy(dev->ibdev.node_desc, QEDR_NODE_DESC, sizeof(QEDR_NODE_DESC));
 
        dev->ibdev.uverbs_cmd_mask |=
-                                    QEDR_UVERBS(RESIZE_CQ) |
                                     QEDR_UVERBS(REQ_NOTIFY_CQ) |
-                                    QEDR_UVERBS(CREATE_SRQ) |
-                                    QEDR_UVERBS(DESTROY_SRQ) |
-                                    QEDR_UVERBS(QUERY_SRQ) |
-                                    QEDR_UVERBS(MODIFY_SRQ) |
                                     QEDR_UVERBS(POST_SRQ_RECV) |
                                     QEDR_UVERBS(POLL_CQ) |
                                     QEDR_UVERBS(POST_SEND) |
index 7db5c1c7d06d2e458cfb5067d2d17c68687b013f..1b63a491fa72d565884128628ad56f9248e018ea 100644 (file)
@@ -398,11 +398,6 @@ static void *usnic_ib_device_add(struct pci_dev *dev)
        us_ibdev->ib_dev.num_comp_vectors = USNIC_IB_NUM_COMP_VECTORS;
        us_ibdev->ib_dev.dev.parent = &dev->dev;
 
-       us_ibdev->ib_dev.uverbs_cmd_mask |=
-               (1ull << IB_USER_VERBS_CMD_ATTACH_MCAST) |
-               (1ull << IB_USER_VERBS_CMD_DETACH_MCAST) |
-               (1ull << IB_USER_VERBS_CMD_OPEN_QP);
-
        ib_set_device_ops(&us_ibdev->ib_dev, &usnic_dev_ops);
 
        rdma_set_device_sysfs_group(&us_ibdev->ib_dev, &usnic_attr_group);
index bfcffbf2185726546f164a43932fb6a3d4452046..798e9a4ddd1c07aff1694f0209961e9fb9ada217 100644 (file)
@@ -236,10 +236,6 @@ static int pvrdma_register_device(struct pvrdma_dev *dev)
        /* Check if SRQ is supported by backend */
        if (dev->dsr->caps.max_srq) {
                dev->ib_dev.uverbs_cmd_mask |=
-                       (1ull << IB_USER_VERBS_CMD_CREATE_SRQ)  |
-                       (1ull << IB_USER_VERBS_CMD_MODIFY_SRQ)  |
-                       (1ull << IB_USER_VERBS_CMD_QUERY_SRQ)   |
-                       (1ull << IB_USER_VERBS_CMD_DESTROY_SRQ) |
                        (1ull << IB_USER_VERBS_CMD_POST_SRQ_RECV);
 
                ib_set_device_ops(&dev->ib_dev, &pvrdma_dev_srq_ops);
index ef0d131e8f068865da4eea237cbe2bacac68420f..77afd06166fc2b702b23726964287cdc728febb9 100644 (file)
@@ -598,17 +598,10 @@ int rvt_register_device(struct rvt_dev_info *rdi)
                (1ull << IB_USER_VERBS_CMD_MODIFY_AH)           |
                (1ull << IB_USER_VERBS_CMD_QUERY_AH)            |
                (1ull << IB_USER_VERBS_CMD_DESTROY_AH)          |
-               (1ull << IB_USER_VERBS_CMD_RESIZE_CQ)           |
                (1ull << IB_USER_VERBS_CMD_POLL_CQ)             |
                (1ull << IB_USER_VERBS_CMD_REQ_NOTIFY_CQ)       |
                (1ull << IB_USER_VERBS_CMD_POST_SEND)           |
                (1ull << IB_USER_VERBS_CMD_POST_RECV)           |
-               (1ull << IB_USER_VERBS_CMD_ATTACH_MCAST)        |
-               (1ull << IB_USER_VERBS_CMD_DETACH_MCAST)        |
-               (1ull << IB_USER_VERBS_CMD_CREATE_SRQ)          |
-               (1ull << IB_USER_VERBS_CMD_MODIFY_SRQ)          |
-               (1ull << IB_USER_VERBS_CMD_QUERY_SRQ)           |
-               (1ull << IB_USER_VERBS_CMD_DESTROY_SRQ)         |
                (1ull << IB_USER_VERBS_CMD_POST_SRQ_RECV);
        rdi->ibdev.node_type = RDMA_NODE_IB_CA;
        if (!rdi->ibdev.num_comp_vectors)
index fe7bd2c2e646fd3c62e6ed716a6fc3563d6125f2..02b7f92ac878440c1f1280e983e12a8f0a7a143b 100644 (file)
@@ -1133,14 +1133,9 @@ int rxe_register_device(struct rxe_dev *rxe, const char *ibdev_name)
        dma_set_coherent_mask(&dev->dev, dma_get_required_mask(&dev->dev));
 
        dev->uverbs_cmd_mask |=
-           BIT_ULL(IB_USER_VERBS_CMD_CREATE_SRQ)
-           | BIT_ULL(IB_USER_VERBS_CMD_MODIFY_SRQ)
-           | BIT_ULL(IB_USER_VERBS_CMD_QUERY_SRQ)
-           | BIT_ULL(IB_USER_VERBS_CMD_DESTROY_SRQ)
-           | BIT_ULL(IB_USER_VERBS_CMD_POST_SRQ_RECV)
+           BIT_ULL(IB_USER_VERBS_CMD_POST_SRQ_RECV)
            | BIT_ULL(IB_USER_VERBS_CMD_POST_SEND)
            | BIT_ULL(IB_USER_VERBS_CMD_POST_RECV)
-           | BIT_ULL(IB_USER_VERBS_CMD_RESIZE_CQ)
            | BIT_ULL(IB_USER_VERBS_CMD_POLL_CQ)
            | BIT_ULL(IB_USER_VERBS_CMD_PEEK_CQ)
            | BIT_ULL(IB_USER_VERBS_CMD_REQ_NOTIFY_CQ)
@@ -1148,8 +1143,6 @@ int rxe_register_device(struct rxe_dev *rxe, const char *ibdev_name)
            | BIT_ULL(IB_USER_VERBS_CMD_MODIFY_AH)
            | BIT_ULL(IB_USER_VERBS_CMD_QUERY_AH)
            | BIT_ULL(IB_USER_VERBS_CMD_DESTROY_AH)
-           | BIT_ULL(IB_USER_VERBS_CMD_ATTACH_MCAST)
-           | BIT_ULL(IB_USER_VERBS_CMD_DETACH_MCAST)
            ;
 
        ib_set_device_ops(dev, &rxe_dev_ops);
index 4a324b91104e092dc31617f27f82fd879855639c..2efe83a2f18bfbfa4bfd9b9018b8d6a259f8a504 100644 (file)
@@ -351,11 +351,7 @@ static struct siw_device *siw_device_create(struct net_device *netdev)
                (1ull << IB_USER_VERBS_CMD_REQ_NOTIFY_CQ) |
                (1ull << IB_USER_VERBS_CMD_POST_SEND) |
                (1ull << IB_USER_VERBS_CMD_POST_RECV) |
-               (1ull << IB_USER_VERBS_CMD_CREATE_SRQ) |
-               (1ull << IB_USER_VERBS_CMD_POST_SRQ_RECV) |
-               (1ull << IB_USER_VERBS_CMD_MODIFY_SRQ) |
-               (1ull << IB_USER_VERBS_CMD_QUERY_SRQ) |
-               (1ull << IB_USER_VERBS_CMD_DESTROY_SRQ);
+               (1ull << IB_USER_VERBS_CMD_POST_SRQ_RECV);
 
        base_dev->node_type = RDMA_NODE_RNIC;
        memcpy(base_dev->node_desc, SIW_NODE_DESC_COMMON,