On Mon, Mar 13, 2017 at 08:31:25PM +0200, Erez Shitrit wrote: > > Get the relevant capabilities if supports ipoib_enhanced_offloads and > init the flow steering table accordingly. > > Signed-off-by: Erez Shitrit > --- > drivers/net/ethernet/mellanox/mlx5/core/fs_core.c | 10 +++++----- > drivers/net/ethernet/mellanox/mlx5/core/fw.c | 3 ++- > 2 files changed, 7 insertions(+), 6 deletions(-) > > diff --git a/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c b/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c > index fa4edd88daf1..dd21fc557281 100644 > --- a/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c > +++ b/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c > @@ -1991,9 +1991,6 @@ int mlx5_init_fs(struct mlx5_core_dev *dev) > struct mlx5_flow_steering *steering; > int err = 0; > > - if (MLX5_CAP_GEN(dev, port_type) != MLX5_CAP_PORT_TYPE_ETH) > - return 0; > - > err = mlx5_init_fc_stats(dev); > if (err) > return err; > @@ -2004,8 +2001,11 @@ int mlx5_init_fs(struct mlx5_core_dev *dev) > steering->dev = dev; > dev->priv.steering = steering; > > - if (MLX5_CAP_GEN(dev, nic_flow_table) && > - MLX5_CAP_FLOWTABLE_NIC_RX(dev, ft_support)) { > + if ((((MLX5_CAP_GEN(dev, port_type) == MLX5_CAP_PORT_TYPE_ETH) && > + (MLX5_CAP_GEN(dev, nic_flow_table))) || > + ((MLX5_CAP_GEN(dev, port_type) == MLX5_CAP_PORT_TYPE_IB) && > + MLX5_CAP_GEN(dev, ipoib_enhanced_offloads))) > + && MLX5_CAP_FLOWTABLE_NIC_RX(dev, ft_support)) { Erez, Please calculate the result outside of "if.." and do it in steps, it is pretty hard to count all these brackets. Thanks