On 6/7/2023 2:02 PM, Ivan Malov wrote: > On EF100 hardware, match-action engine (MAE) can be equipped > with an assistance table for connection tracking (CT). In it, > an entry key is a set of exact match fields: an EtherType, a > pair of IP addresses, a L4 protocol ID and a pair of L4 port > numbers. An entry response can provide matching packets with > a mark value and additional data to be plumbed to NAT action. > In addition, an update to mark-and-sweep counter can be done. > > This table was designed with larger capacity in mind, > so moving the above match criteria out of an action > rule (AR) specification to a CT entry increases the > likelihood of reusing AR entries and improves the > total flow engine capacity. Make use of that. > > Changes in v2: > * Found and fixed my own mistake in [15/34] > * Fixed [16/34] as per 0-day robot report > * Added missing release notes to [27/34] > * Added missing release notes to [30/34] > > Changes in v3: > * Fixed release notes in [27/34] > * Rebased on dpdk to fix CI > > Changes in v4: > * Applied review notes in [05/34], [08/34], [09/34] and [10/34]. > > Denis Pryazhennikov (11): > common/sfc_efx/base: update MCDI headers > common/sfc_efx/base: detect MCDI Table Access API support > common/sfc_efx/base: add API to list HW tables > common/sfc_efx/base: add macro to get indexed QWORD field > common/sfc_efx/base: add API to get HW table desc > common/sfc_efx/base: add API to insert data to HW table > common/sfc_efx/base: add API to delete entry from HW table > net/sfc: add MCDI wrappers for BCAM tables > net/sfc: add functions to manipulate MCDI table fields > net/sfc: attach to HW table API > net/sfc: add API to manage HW Conntrack table > > Ivan Malov (23): > net/sfc: make entry pointer optional in MAE resource helpers > net/sfc: turn flow create/destroy methods into lock wrappers > net/sfc: let driver-internal flows use VF representor action > net/sfc: extend generic flow API to allow for internal flows > net/sfc: switch driver-internal flows to use generic methods > net/sfc: move MAE flow parsing method to MAE-specific source > net/sfc: move MAE counter stream start to action set handler > net/sfc: prepare MAE outer rules for action rule indirection > net/sfc: turn MAE flow action rules into shareable resources > common/sfc_efx/base: provide an API to clone MAE match specs > common/sfc_efx/base: add API to read back MAE match criteria > common/sfc_efx/base: match on conntrack mark in action rules > common/sfc_efx/base: add API to request MAE conntrack lookup > net/sfc: make use of conntrack assistance for transfer flows > common/sfc_efx/base: support NAT edits in MAE > net/sfc: add support for IPv4 NAT offload to MAE backend > net/sfc: rename SW structures used by transfer flow counters > net/sfc: rework MAE action rule counter representation in SW > net/sfc: support indirect count action in transfer flows > common/sfc_efx/base: rework MAE counter provisioning helpers > net/sfc: indicate MAE counter type in use for transfer flows > common/sfc_efx/base: support conntrack assistance counters > net/sfc: use conntrack assistance counters in transfer flows >
Series applied to dpdk-next-net/main, thanks.