ice: allow deleting advanced rules
authorShivanshu Shukla <shivanshu.shukla@intel.com>
Fri, 6 Aug 2021 08:49:02 +0000 (10:49 +0200)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Mon, 11 Oct 2021 15:48:49 +0000 (08:48 -0700)
commit8bb98f33dead401daa5941abb357983362e0f6ca
tree79280fadd5c9230279c154395b069c693d850230
parent0f94570d0cae1ab7c322d764c3514d3558137eea
ice: allow deleting advanced rules

To remove advanced rule the same protocols list like in adding should be
send to function. Based on this information list of advanced rules is
searched to find the correct rule id.

Remove advanced rule if it forwards to only one VSI. If it forwards
to list of VSI remove only input VSI from this list.

Introduce function to remove rule by id. It is used in case rule needs to
be removed even if it forwards to the list of VSI.

Allow removing all advanced rules from a particular VSI. It is useful in
rebuilding VSI path.

Co-developed-by: Dan Nowlin <dan.nowlin@intel.com>
Signed-off-by: Dan Nowlin <dan.nowlin@intel.com>
Signed-off-by: Shivanshu Shukla <shivanshu.shukla@intel.com>
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_switch.c
drivers/net/ethernet/intel/ice/ice_switch.h