Skip to content

Commit 676b570

Browse files
jgunthorperleon
authored andcommitted
RDMA/mlx5: Pull comp_mask validation into ib_copy_validate_udata_in_cm()
Directly check the supported comp_mask bitmap using ib_copy_validate_udata_in_cm() and remove the open coding. Signed-off-by: Jason Gunthorpe <jgg@nvidia.com> Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
1 parent 604caeb commit 676b570

1 file changed

Lines changed: 8 additions & 9 deletions

File tree

  • drivers/infiniband/hw/mlx5

drivers/infiniband/hw/mlx5/qp.c

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4707,12 +4707,12 @@ int mlx5_ib_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
47074707
return -ENOSYS;
47084708

47094709
if (udata && udata->inlen) {
4710-
err = ib_copy_validate_udata_in(udata, ucmd, ece_options);
4710+
err = ib_copy_validate_udata_in_cm(udata, ucmd, ece_options,
4711+
MLX5_IB_MODIFY_QP_OOO_DP);
47114712
if (err)
47124713
return err;
47134714

4714-
if (ucmd.comp_mask & ~MLX5_IB_MODIFY_QP_OOO_DP ||
4715-
memchr_inv(&ucmd.burst_info.reserved, 0,
4715+
if (memchr_inv(&ucmd.burst_info.reserved, 0,
47164716
sizeof(ucmd.burst_info.reserved)))
47174717
return -EOPNOTSUPP;
47184718

@@ -5381,17 +5381,16 @@ static int prepare_user_rq(struct ib_pd *pd,
53815381
struct mlx5_ib_dev *dev = to_mdev(pd->device);
53825382
struct mlx5_ib_create_wq ucmd = {};
53835383
int err;
5384-
err = ib_copy_validate_udata_in(udata, ucmd,
5385-
single_stride_log_num_of_bytes);
5384+
5385+
err = ib_copy_validate_udata_in_cm(udata, ucmd,
5386+
single_stride_log_num_of_bytes,
5387+
MLX5_IB_CREATE_WQ_STRIDING_RQ);
53865388
if (err) {
53875389
mlx5_ib_dbg(dev, "copy failed\n");
53885390
return err;
53895391
}
53905392

5391-
if (ucmd.comp_mask & (~MLX5_IB_CREATE_WQ_STRIDING_RQ)) {
5392-
mlx5_ib_dbg(dev, "invalid comp mask\n");
5393-
return -EOPNOTSUPP;
5394-
} else if (ucmd.comp_mask & MLX5_IB_CREATE_WQ_STRIDING_RQ) {
5393+
if (ucmd.comp_mask & MLX5_IB_CREATE_WQ_STRIDING_RQ) {
53955394
if (!MLX5_CAP_GEN(dev->mdev, striding_rq)) {
53965395
mlx5_ib_dbg(dev, "Striding RQ is not supported\n");
53975396
return -EOPNOTSUPP;

0 commit comments

Comments
 (0)