RDMA: Move enum ib_cq_creation_flags to uapi headers
authorJason Gunthorpe <jgg@mellanox.com>
Fri, 26 Jan 2018 22:16:46 +0000 (15:16 -0700)
committerJason Gunthorpe <jgg@mellanox.com>
Mon, 29 Jan 2018 19:58:34 +0000 (12:58 -0700)
The flags field the enum is used with comes directly from the uapi
so it belongs in the uapi headers for clarity and so userspace can
use it.

Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/hw/mlx4/cq.c
drivers/infiniband/hw/mlx5/cq.c
drivers/infiniband/hw/mlx5/mlx5_ib.h
include/rdma/ib_verbs.h
include/uapi/rdma/ib_user_verbs.h

index bf4f14a..9a566ee 100644 (file)
@@ -170,7 +170,7 @@ err_buf:
        return err;
 }
 
-#define CQ_CREATE_FLAGS_SUPPORTED IB_CQ_FLAGS_TIMESTAMP_COMPLETION
+#define CQ_CREATE_FLAGS_SUPPORTED IB_UVERBS_CQ_FLAGS_TIMESTAMP_COMPLETION
 struct ib_cq *mlx4_ib_create_cq(struct ib_device *ibdev,
                                const struct ib_cq_init_attr *attr,
                                struct ib_ucontext *context,
@@ -246,7 +246,7 @@ struct ib_cq *mlx4_ib_create_cq(struct ib_device *ibdev,
 
        err = mlx4_cq_alloc(dev->dev, entries, &cq->buf.mtt, uar,
                            cq->db.dma, &cq->mcq, vector, 0,
-                           !!(cq->create_flags & IB_CQ_FLAGS_TIMESTAMP_COMPLETION));
+                           !!(cq->create_flags & IB_UVERBS_CQ_FLAGS_TIMESTAMP_COMPLETION));
        if (err)
                goto err_dbmap;
 
index 18705cb..5b974fb 100644 (file)
@@ -1010,7 +1010,7 @@ struct ib_cq *mlx5_ib_create_cq(struct ib_device *ibdev,
        MLX5_SET(cqc, cqc, uar_page, index);
        MLX5_SET(cqc, cqc, c_eqn, eqn);
        MLX5_SET64(cqc, cqc, dbr_addr, cq->db.dma);
-       if (cq->create_flags & IB_CQ_FLAGS_IGNORE_OVERRUN)
+       if (cq->create_flags & IB_UVERBS_CQ_FLAGS_IGNORE_OVERRUN)
                MLX5_SET(cqc, cqc, oi, 1);
 
        err = mlx5_core_create_cq(dev->mdev, &cq->mcq, cqb, inlen);
index 69a80f7..1393851 100644 (file)
@@ -1123,8 +1123,8 @@ static inline u32 check_cq_create_flags(u32 flags)
         * It returns non-zero value for unsupported CQ
         * create flags, otherwise it returns zero.
         */
-       return (flags & ~(IB_CQ_FLAGS_IGNORE_OVERRUN |
-                         IB_CQ_FLAGS_TIMESTAMP_COMPLETION));
+       return (flags & ~(IB_UVERBS_CQ_FLAGS_IGNORE_OVERRUN |
+                         IB_UVERBS_CQ_FLAGS_TIMESTAMP_COMPLETION));
 }
 
 static inline int verify_assign_uidx(u8 cqe_version, u32 cmd_uidx,
index 5e32fe7..0b29425 100644 (file)
@@ -300,11 +300,6 @@ struct ib_tm_caps {
        u32 max_sge;
 };
 
-enum ib_cq_creation_flags {
-       IB_CQ_FLAGS_TIMESTAMP_COMPLETION   = 1 << 0,
-       IB_CQ_FLAGS_IGNORE_OVERRUN         = 1 << 1,
-};
-
 struct ib_cq_init_attr {
        unsigned int    cqe;
        int             comp_vector;
index fd03564..04d0e67 100644 (file)
@@ -402,13 +402,18 @@ struct ib_uverbs_create_cq {
        __u64 driver_data[0];
 };
 
+enum ib_uverbs_ex_create_cq_flags {
+       IB_UVERBS_CQ_FLAGS_TIMESTAMP_COMPLETION = 1 << 0,
+       IB_UVERBS_CQ_FLAGS_IGNORE_OVERRUN = 1 << 1,
+};
+
 struct ib_uverbs_ex_create_cq {
        __u64 user_handle;
        __u32 cqe;
        __u32 comp_vector;
        __s32 comp_channel;
        __u32 comp_mask;
-       __u32 flags;
+       __u32 flags;  /* bitmask of ib_uverbs_ex_create_cq_flags */
        __u32 reserved;
 };