aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorMaor Gottlieb <maorg@mellanox.com>2016-06-09 17:07:33 -0400
committerDavid S. Miller <davem@davemloft.net>2016-06-10 01:06:26 -0400
commitbd02ef8eec0b98abe6d5efe280c87903b2eb9874 (patch)
treec3d5c752f61a6447c464eba6dcb7ddc476c60f59 /drivers
parent876d634d19e41603aab91455f2c52a78a28372d5 (diff)
net/mlx5: Fix E-Switch flow steering capabilities check
Add missing capabilities check for E-Switch FDB and ACLs flow tables before creating their namespace in flow steering. Fixes: efdc810ba39d ('net/mlx5: Flow steering, Add vport ACL support') Signed-off-by: Maor Gottlieb <maorg@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/fs_core.c28
1 files changed, 15 insertions, 13 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c b/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
index c1efa5517d17..e912a3d2505e 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
@@ -1846,19 +1846,21 @@ int mlx5_init_fs(struct mlx5_core_dev *dev)
1846 } 1846 }
1847 1847
1848 if (MLX5_CAP_GEN(dev, eswitch_flow_table)) { 1848 if (MLX5_CAP_GEN(dev, eswitch_flow_table)) {
1849 err = init_fdb_root_ns(dev); 1849 if (MLX5_CAP_ESW_FLOWTABLE_FDB(dev, ft_support)) {
1850 if (err) 1850 err = init_fdb_root_ns(dev);
1851 goto err; 1851 if (err)
1852 } 1852 goto err;
1853 if (MLX5_CAP_ESW_EGRESS_ACL(dev, ft_support)) { 1853 }
1854 err = init_egress_acl_root_ns(dev); 1854 if (MLX5_CAP_ESW_EGRESS_ACL(dev, ft_support)) {
1855 if (err) 1855 err = init_egress_acl_root_ns(dev);
1856 goto err; 1856 if (err)
1857 } 1857 goto err;
1858 if (MLX5_CAP_ESW_INGRESS_ACL(dev, ft_support)) { 1858 }
1859 err = init_ingress_acl_root_ns(dev); 1859 if (MLX5_CAP_ESW_INGRESS_ACL(dev, ft_support)) {
1860 if (err) 1860 err = init_ingress_acl_root_ns(dev);
1861 goto err; 1861 if (err)
1862 goto err;
1863 }
1862 } 1864 }
1863 1865
1864 return 0; 1866 return 0;