On 2/12/2024 3:03 AM, Lukasz Plachno wrote:
> From: Jakub Buchocki <jakubx.bucho...@intel.com>
>
> Add support for 'flow-type ether' Flow Director rules via ethtool.
>
> Create packet segment info for filter configuration based on ethtool
> command parameters. Reuse infrastructure already created for
> ipv4 and ipv6 flows to convert packet segment into
> extraction sequence, which is later used to program the filter
> inside Flow Director block of the Rx pipeline.
>
> Rules not containing masks are processed by the Flow Director,
> and support the following set of input parameters in all combinations:
> src, dst, proto, vlan-etype, vlan, action.
>
> It is possible to specify address mask in ethtool parameters but only
> 00:00:00:00:00 and FF:FF:FF:FF:FF are valid.
> The same applies to proto, vlan-etype and vlan masks:
> only 0x0000 and 0xffff masks are valid.
>
> Testing:
> (DUT) iperf3 -s
> (DUT) ethtool -U ens785f0np0 flow-type ether dst <ens785f0np0 mac> \
> action 10
> (DUT) watch 'ethtool -S ens785f0np0 | grep rx_queue'
> (LP) iperf3 -c ${DUT_IP}
>
> Counters increase only for:
> 'rx_queue_10_packets'
> 'rx_queue_10_bytes'
>
> Signed-off-by: Jakub Buchocki <jakubx.bucho...@intel.com>
> Co-developed-by: Mateusz Pacuszka <mateuszx.pacus...@intel.com>
> Signed-off-by: Mateusz Pacuszka <mateuszx.pacus...@intel.com>
> Signed-off-by: Lukasz Plachno <lukasz.plac...@intel.com>
Reviewed-by: Jacob Keller <jacob.e.kel...@intel.com>