Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d49c2197 authored by Noa Osherovich's avatar Noa Osherovich Committed by David S. Miller
Browse files

net/mlx4_core: Avoid returning success in case of an error flow



The err variable wasn't set with the correct error value in some cases.

Fixes: 47605df9 ('mlx4: Modify proxy/tunnel QP mechanism [..]')
Signed-off-by: default avatarNoa Osherovich <noaos@mellanox.com>
Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent f5adbfee
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -892,9 +892,10 @@ static int mlx4_slave_cap(struct mlx4_dev *dev)
		dev->caps.qp1_proxy[i - 1] = func_cap.qp1_proxy_qpn;
		dev->caps.port_mask[i] = dev->caps.port_type[i];
		dev->caps.phys_port_id[i] = func_cap.phys_port_id;
		if (mlx4_get_slave_pkey_gid_tbl_len(dev, i,
		err = mlx4_get_slave_pkey_gid_tbl_len(dev, i,
						      &dev->caps.gid_table_len[i],
						    &dev->caps.pkey_table_len[i]))
						      &dev->caps.pkey_table_len[i]);
		if (err)
			goto err_mem;
	}

@@ -906,6 +907,7 @@ static int mlx4_slave_cap(struct mlx4_dev *dev)
			 dev->caps.uar_page_size * dev->caps.num_uars,
			 (unsigned long long)
			 pci_resource_len(dev->persist->pdev, 2));
		err = -ENOMEM;
		goto err_mem;
	}