Merge branch 'mlxsw-ERP-sharing-multiple-masks'
authorDavid S. Miller <davem@davemloft.net>
Thu, 15 Nov 2018 22:43:44 +0000 (14:43 -0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 15 Nov 2018 22:43:44 +0000 (14:43 -0800)
commit4e86889b52ac53a164feb92d27bd2a7d9f3e6ad4
tree9cc06f068d9674a24f02f96d11bd015e558fabd4
parent6ab6dfa6bb500f5cbb9b7a0f23a1613417ca2d12
parent3b423271b89a78757ad49725e131472e4fe1a49c
Merge branch 'mlxsw-ERP-sharing-multiple-masks'

Ido Schimmel says:

====================
mlxsw: spectrum: acl: Introduce ERP sharing by multiple masks

Jiri says:

The Spectrum-2 hardware has limitation number of ERPs per-region. In
order to accommodate more masks than number of ERPs, the hardware
supports to insert rules with delta bits. By that, the rules with masks
that differ in up-to 8 consecutive bits can share the same ERP.

Patches 1 and 2 fix couple of issues that would appear in existing
selftests after adding delta support

Patch 3 introduces a generic object aggregation library. Now it is
static, but it will get extended for recalculation of aggregations in
the future in order to reach more optimal aggregation.

Patch 4 just simply converts existing ERP code to use the objagg library
instead of a rhashtable.

Patches 5-9 do more or less small changes to prepare ground for the last
patch.

Patch 10 fills-up delta callbacks of objagg library and utilizes the
delta bits for rule insertion.

The last patch adds selftest to test the mlxsw Spectrum-2 delta flows.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>