net/sfc: support flow action count in transfer rules
authorIgor Romanov <igor.romanov@oktetlabs.ru>
Fri, 2 Jul 2021 08:39:47 +0000 (11:39 +0300)
committerDavid Marchand <david.marchand@redhat.com>
Tue, 20 Jul 2021 10:20:31 +0000 (12:20 +0200)
commit96fd2bd69b58b0500b19f242c0cf6aa464d0a195
treeab0728c49c0290589e3a60aa9659ceae679c4814
parent248239f8742a11b7df05321d2b2e9bc144deb62f
net/sfc: support flow action count in transfer rules

For now, a rule may have only one dedicated counter, shared counters
are not supported.

HW delivers (or "streams") counter readings using special packets.
The driver creates a dedicated Rx queue to receive such packets
and requests that HW start "streaming" the readings to it.

The counter queue is polled periodically, and the first available
service core is used for that. Hence, the user has to specify at least
one service core for counters to work. Such a core is shared by all
MAE-capable devices managed by sfc driver.

Signed-off-by: Igor Romanov <igor.romanov@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Reviewed-by: Andy Moreton <amoreton@xilinx.com>
Reviewed-by: Ivan Malov <ivan.malov@oktetlabs.ru>
doc/guides/nics/features/sfc.ini
doc/guides/nics/sfc_efx.rst
doc/guides/rel_notes/release_21_08.rst
drivers/net/sfc/meson.build
drivers/net/sfc/sfc_flow.c
drivers/net/sfc/sfc_mae.c
drivers/net/sfc/sfc_mae.h
drivers/net/sfc/sfc_mae_counter.c
drivers/net/sfc/sfc_mae_counter.h
drivers/net/sfc/sfc_stats.h [new file with mode: 0644]
drivers/net/sfc/sfc_tweak.h