From: Eli Cohen Date: Wed, 23 Oct 2013 06:53:13 +0000 (+0300) Subject: IB/mlx5: Fix check of number of entries in create CQ X-Git-Tag: v3.13-rc1~44^2^7~16 X-Git-Url: http://git.cascardo.eti.br/?a=commitdiff_plain;h=51ee86a4af639e4ee8953dd02ad8a766c40f46a1;p=cascardo%2Flinux.git IB/mlx5: Fix check of number of entries in create CQ Verify that the value is non negative before rounding up to power of 2. Signed-off-by: Eli Cohen Signed-off-by: Roland Dreier --- diff --git a/drivers/infiniband/hw/mlx5/cq.c b/drivers/infiniband/hw/mlx5/cq.c index 344ab03948a3..e7c64c57d699 100644 --- a/drivers/infiniband/hw/mlx5/cq.c +++ b/drivers/infiniband/hw/mlx5/cq.c @@ -653,8 +653,11 @@ struct ib_cq *mlx5_ib_create_cq(struct ib_device *ibdev, int entries, int eqn; int err; + if (entries < 0) + return ERR_PTR(-EINVAL); + entries = roundup_pow_of_two(entries + 1); - if (entries < 1 || entries > dev->mdev.caps.max_cqes) + if (entries > dev->mdev.caps.max_cqes) return ERR_PTR(-EINVAL); cq = kzalloc(sizeof(*cq), GFP_KERNEL);