diff options
author | Leon Romanovsky <leonro@nvidia.com> | 2021-10-12 10:28:43 +0300 |
---|---|---|
committer | Jason Gunthorpe <jgg@nvidia.com> | 2021-10-12 13:23:23 -0300 |
commit | f4e56ec4452f48b8292dcf0e1c4bdac83506fb8b (patch) | |
tree | a474fe18b33e6de75b8496d192a4f3ca98785bdf | |
parent | 9d8f247cc33c881812d2ae106a79292c0d0446b8 (diff) | |
download | linux-stable-f4e56ec4452f48b8292dcf0e1c4bdac83506fb8b.tar.gz linux-stable-f4e56ec4452f48b8292dcf0e1c4bdac83506fb8b.tar.bz2 linux-stable-f4e56ec4452f48b8292dcf0e1c4bdac83506fb8b.zip |
RDMA/mlx4: Return missed an error if device doesn't support steering
The error flow fixed in this patch is not possible because all kernel
users of create QP interface check that device supports steering before
set IB_QP_CREATE_NETIF_QP flag.
Fixes: c1c98501121e ("IB/mlx4: Add support for steerable IB UD QPs")
Link: https://lore.kernel.org/r/91c61f6e60eb0240f8bbc321fda7a1d2986dd03c.1634023677.git.leonro@nvidia.com
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
-rw-r--r-- | drivers/infiniband/hw/mlx4/qp.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/mlx4/qp.c b/drivers/infiniband/hw/mlx4/qp.c index 8662f462e2a5..3a1a4ac9dd33 100644 --- a/drivers/infiniband/hw/mlx4/qp.c +++ b/drivers/infiniband/hw/mlx4/qp.c @@ -1099,8 +1099,10 @@ static int create_qp_common(struct ib_pd *pd, struct ib_qp_init_attr *init_attr, if (dev->steering_support == MLX4_STEERING_MODE_DEVICE_MANAGED) qp->flags |= MLX4_IB_QP_NETIF; - else + else { + err = -EINVAL; goto err; + } } err = set_kernel_sq_size(dev, &init_attr->cap, qp_type, qp); |