aboutsummaryrefslogtreecommitdiff
path: root/rust/compiler_builtins.rs
diff options
context:
space:
mode:
authorJakub Buchocki <[email protected]>2024-04-03 12:24:02 +0200
committerTony Nguyen <[email protected]>2024-04-12 10:34:24 -0700
commitae67389c53928418975b46d13b51fde4e40ee15f (patch)
treebaa5afbd6fc2e9ba09f30a033768531613a4f70a /rust/compiler_builtins.rs
parent0a66e976430402d0064687853fddc33088faa98a (diff)
ice: Implement 'flow-type ether' rules
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 <[email protected]> Co-developed-by: Mateusz Pacuszka <[email protected]> Signed-off-by: Mateusz Pacuszka <[email protected]> Reviewed-by: Przemek Kitszel <[email protected]> Signed-off-by: Lukasz Plachno <[email protected]> Reviewed-by: Jacob Keller <[email protected]> Reviewed-by: Simon Horman <[email protected]> Tested-by: Pucha Himasekhar Reddy <[email protected]> (A Contingent worker at Intel) Signed-off-by: Tony Nguyen <[email protected]>
Diffstat (limited to 'rust/compiler_builtins.rs')
0 files changed, 0 insertions, 0 deletions