net/mlx4_core: fix incorrect size allocation for dev->caps.spec_qps

The current allocation for dev->caps.spec_qps is for the size of the
pointer and not the size of the actual  mlx4_spec_qps structure.  Fix
this by using the correct size.   Also splint allocation over a few
lines to make it cppcheck clean on overly wide lines.

Detected by CoverityScan, CID#1455222 ("Wrong sizeof argument")

Fixes: c73c8b1e47 ("net/mlx4_core: Dynamically allocate structs at mlx4_slave_cap")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Acked-by: Tariq Toukan <tariqt@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Colin Ian King 2017-08-31 18:07:24 +01:00 committed by David S. Miller
parent 542deb88b0
commit 942e7e5fc1
1 changed files with 3 additions and 2 deletions

View File

@ -844,8 +844,9 @@ int mlx4_init_qp_table(struct mlx4_dev *dev)
/* In mfunc, calculate proxy and tunnel qp offsets for the PF here, /* In mfunc, calculate proxy and tunnel qp offsets for the PF here,
* since the PF does not call mlx4_slave_caps */ * since the PF does not call mlx4_slave_caps */
dev->caps.spec_qps = kcalloc(dev->caps.num_ports, sizeof(dev->caps.spec_qps), GFP_KERNEL); dev->caps.spec_qps = kcalloc(dev->caps.num_ports,
sizeof(*dev->caps.spec_qps),
GFP_KERNEL);
if (!dev->caps.spec_qps) { if (!dev->caps.spec_qps) {
err = -ENOMEM; err = -ENOMEM;
goto err_mem; goto err_mem;