net/ice/base: fix Rx functionality for ethertype filters
In the function ice_add_eth_mac(), there is a line that
hard-codes the filter info flag to TX. This is redundant
and inaccurate. That flag will be set by the calling
function that built the list of filters to add, and
hard-coding it eliminates the Rx functionality of this
code. The paired function ice_remove_eth_mac() does not
do this, making a mis-matched pair.
Fixes: 157d00901f
("net/ice/base: add functions for ethertype filter")
Cc: stable@dpdk.org
Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
Signed-off-by: Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>
Signed-off-by: Leyi Rong <leyi.rong@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
This commit is contained in:
parent
421d265c2a
commit
fe59c0a131
@ -2975,12 +2975,19 @@ ice_add_mac_vlan(struct ice_hw *hw, struct LIST_HEAD_TYPE *mv_list)
|
||||
* ice_add_eth_mac - Add ethertype and MAC based filter rule
|
||||
* @hw: pointer to the hardware structure
|
||||
* @em_list: list of ether type MAC filter, MAC is optional
|
||||
*
|
||||
* This function requires the caller to populate the entries in
|
||||
* the filter list with the necessary fields (including flags to
|
||||
* indicate Tx or Rx rules).
|
||||
*/
|
||||
enum ice_status
|
||||
ice_add_eth_mac(struct ice_hw *hw, struct LIST_HEAD_TYPE *em_list)
|
||||
{
|
||||
struct ice_fltr_list_entry *em_list_itr;
|
||||
|
||||
if (!em_list || !hw)
|
||||
return ICE_ERR_PARAM;
|
||||
|
||||
LIST_FOR_EACH_ENTRY(em_list_itr, em_list, ice_fltr_list_entry,
|
||||
list_entry) {
|
||||
enum ice_sw_lkup_type l_type =
|
||||
@ -2990,7 +2997,6 @@ ice_add_eth_mac(struct ice_hw *hw, struct LIST_HEAD_TYPE *em_list)
|
||||
l_type != ICE_SW_LKUP_ETHERTYPE)
|
||||
return ICE_ERR_PARAM;
|
||||
|
||||
em_list_itr->fltr_info.flag = ICE_FLTR_TX;
|
||||
em_list_itr->status = ice_add_rule_internal(hw, l_type,
|
||||
em_list_itr);
|
||||
if (em_list_itr->status)
|
||||
|
Loading…
Reference in New Issue
Block a user