ice: Match on all profiles in slow-path
authorWojciech Drewek <wojciech.drewek@intel.com>
Fri, 17 Dec 2021 11:36:25 +0000 (12:36 +0100)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Fri, 18 Feb 2022 21:22:06 +0000 (13:22 -0800)
commitb70bc066d77b460a63a8c3fb2ea0d811ce862a83
tree41007e13bcc2025426e3725e010c3006a890e530
parentb352c3465bb808ab700d03f5bac2f7a6f37c5350
ice: Match on all profiles in slow-path

In switchdev mode, slow-path rules need to match all protocols, in order
to correctly redirect unfiltered or missed packets to the uplink. To set
this up for the virtual function to uplink flow, the rule that redirects
packets to the control VSI must have the tunnel type set to
ICE_SW_TUN_AND_NON_TUN. As a result of that new tunnel type being set,
ice_get_compat_fv_bitmap will select ICE_PROF_ALL. At that point all
profiles would be selected for this rule, resulting in the desired
behavior. Without this change slow-path would not work with
tunnel protocols.

Fixes: 8b032a55c1bd ("ice: low level support for tunnels")
Signed-off-by: Wojciech Drewek <wojciech.drewek@intel.com>
Tested-by: Sandeep Penigalapati <sandeep.penigalapati@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/ice/ice_eswitch.c
drivers/net/ethernet/intel/ice/ice_protocol_type.h
drivers/net/ethernet/intel/ice/ice_switch.c