On Thu, Apr 20, 2017 at 08:53:32PM +0300, Leon Romanovsky wrote: > From: Noa Osherovich <noaos@xxxxxxxxxxxx> > > In case of an error, the properties reported to user > are zeroed out, so no need for a return value. > > Signed-off-by: Noa Osherovich <noaos@xxxxxxxxxxxx> > Signed-off-by: Leon Romanovsky <leon@xxxxxxxxxx> > --- > drivers/infiniband/hw/mlx5/main.c | 20 ++++++++++---------- > 1 file changed, 10 insertions(+), 10 deletions(-) > > diff --git a/drivers/infiniband/hw/mlx5/main.c b/drivers/infiniband/hw/mlx5/main.c > index 4dc0a8785fe0..6ba8bbc5c74a 100644 > --- a/drivers/infiniband/hw/mlx5/main.c > +++ b/drivers/infiniband/hw/mlx5/main.c > @@ -165,15 +165,20 @@ static struct net_device *mlx5_ib_get_netdev(struct ib_device *device, > return ndev; > } > > -static int mlx5_query_port_roce(struct ib_device *device, u8 port_num, > - struct ib_port_attr *props) > +static void mlx5_query_port_roce(struct ib_device *device, u8 port_num, > + struct ib_port_attr *props) > { > struct mlx5_ib_dev *dev = to_mdev(device); > struct net_device *ndev, *upper; > enum ib_mtu ndev_ib_mtu; > u16 qkey_viol_cntr; > > - /* props being zeroed by the caller, avoid zeroing it here */ > + /* Getting netdev before filling out props so in case of an error it > + * will still be zeroed out. > + */ > + ndev = mlx5_ib_get_netdev(device, port_num); > + if (!ndev) > + return; > It breaks ib_write_bw when netdevice is not bounded to ib device. Need to get rid of this chunk. I'll resend. > props->port_cap_flags |= IB_PORT_CM_SUP; > props->port_cap_flags |= IB_PORT_IP_BASED_GIDS; > @@ -189,10 +194,6 @@ static int mlx5_query_port_roce(struct ib_device *device, u8 port_num, > mlx5_query_nic_vport_qkey_viol_cntr(dev->mdev, &qkey_viol_cntr); > props->qkey_viol_cntr = qkey_viol_cntr; > > - ndev = mlx5_ib_get_netdev(device, port_num); > - if (!ndev) > - return 0; > - > if (mlx5_lag_is_active(dev->mdev)) { > rcu_read_lock(); > upper = netdev_master_upper_dev_get_rcu(ndev); > @@ -217,8 +218,6 @@ static int mlx5_query_port_roce(struct ib_device *device, u8 port_num, > > props->active_width = IB_WIDTH_4X; /* TODO */ > props->active_speed = IB_SPEED_QDR; /* TODO */ > - > - return 0; > } > > static void ib_gid_to_mlx5_roce_addr(const union ib_gid *gid, > @@ -924,7 +923,8 @@ int mlx5_ib_query_port(struct ib_device *ibdev, u8 port, > return mlx5_query_hca_port(ibdev, port, props); > > case MLX5_VPORT_ACCESS_METHOD_NIC: > - return mlx5_query_port_roce(ibdev, port, props); > + mlx5_query_port_roce(ibdev, port, props); > + return 0; > > default: > return -EINVAL; > -- > 2.12.2 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html
Attachment:
signature.asc
Description: PGP signature