diff options
author | Maor Gottlieb <maorg@mellanox.com> | 2016-01-11 11:25:57 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-01-12 01:48:52 +0300 |
commit | f0d22d1874730530a2ac304fd0888cb8a6864527 (patch) | |
tree | eb6cbc01671d019638ac125a2bfb4953131b1877 /drivers/net/ethernet/mellanox/mlx5/core/fs_core.h | |
parent | 23c09c2640c1cb9cba919cf4f181ae99a46d53bc (diff) | |
download | linux-f0d22d1874730530a2ac304fd0888cb8a6864527.tar.xz |
net/mlx5_core: Introduce flow steering autogrouped flow table
When user add rule to autogrouped flow table, we search
for flow group with the same match criteria, if we don't
find such group then we create new flow group with the
required match criteria and insert the rule to this group.
We divide the flow table into required_groups + 1,
in order to reserve a part of the flow table for rules
which don't match any existing group.
Signed-off-by: Maor Gottlieb <maorg@mellanox.com>
Signed-off-by: Moni Shoua <monis@mellanox.com>
Signed-off-by: Matan Barak <matanb@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx5/core/fs_core.h')
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx5/core/fs_core.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/fs_core.h b/drivers/net/ethernet/mellanox/mlx5/core/fs_core.h index 4ebb97fd5544..0f98257c0d31 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/fs_core.h +++ b/drivers/net/ethernet/mellanox/mlx5/core/fs_core.h @@ -77,6 +77,11 @@ struct mlx5_flow_table { unsigned int max_fte; unsigned int level; enum fs_flow_table_type type; + struct { + bool active; + unsigned int required_groups; + unsigned int num_groups; + } autogroup; }; /* Type of children is mlx5_flow_rule */ |