linux/drivers/net/ethernet/intel/i40evf
Alan Brady c766b9af9a i40evf: fix mac filter removal timing issue
Due to the asynchronous nature in which mac filters are added and
deleted, there exists a bug in which filters are erroneously removed if
removed then added again quickly.

The events are as such:
    - filter marked for removal
    - same filter is re-added before watchdog that cleans up filters
    - we skip re-adding the filter because we have it already in the
list
    - watchdog filter cleanup kicks off and filter is removed

So when we were re-adding the same filter, it didn't actually get added
because it already existed in the list, but was marked for removal and
had yet to actually be removed.

This patch fixes the issue by making sure that when adding a filter, if
we find it already existing in our list, make sure it is not marked to
be removed.

Signed-off-by: Alan Brady <alan.brady@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2017-10-09 14:17:03 -07:00
..
i40e_adminq_cmd.h i40e: Display error message if module does not meet thermal requirements 2017-10-06 08:11:31 -07:00
i40e_adminq.c i40e: reduce wait time for adminq command completion 2017-04-19 17:38:25 -07:00
i40e_adminq.h i40e: reduce wait time for adminq command completion 2017-04-19 17:38:25 -07:00
i40e_alloc.h
i40e_common.c i40e: Add support for 'ethtool -m' 2017-10-02 12:46:35 -07:00
i40e_devids.h i40evf: Add support for Adaptive Virtual Function 2017-06-01 14:30:02 -07:00
i40e_hmc.h i40e: use BIT and BIT_ULL macros 2015-07-23 05:33:55 -07:00
i40e_lan_hmc.h
i40e_osdep.h i40evf: remove unnecessary __packed 2017-07-26 03:25:21 -07:00
i40e_prototype.h i40e: Add support for 'ethtool -m' 2017-10-02 12:46:35 -07:00
i40e_register.h i40evf: Remove PF specific register definitions from the VF 2015-08-26 15:05:17 -07:00
i40e_status.h
i40e_trace.h i40e/i40evf: Add tracepoints 2017-04-19 16:47:31 -07:00
i40e_txrx.c i40e/i40evf: rename bytes_per_int to bytes_per_usec 2017-09-29 12:50:58 -07:00
i40e_txrx.h i40e/i40evf: use DECLARE_BITMAP for state 2017-10-06 08:11:31 -07:00
i40e_type.h i40e: Stop dropping 802.1ad tags - eth proto 0x88a8 2017-10-02 12:46:36 -07:00
i40evf_client.c virtchnl: rename i40e to generic virtchnl 2017-06-01 14:08:53 -07:00
i40evf_client.h i40evf: add client interface 2017-03-15 01:31:38 -07:00
i40evf_ethtool.c i40evf: Enable VF to request an alternate queue allocation 2017-10-02 12:46:35 -07:00
i40evf_main.c i40evf: fix mac filter removal timing issue 2017-10-09 14:17:03 -07:00
i40evf_virtchnl.c i40evf: Enable VF to request an alternate queue allocation 2017-10-02 12:46:35 -07:00
i40evf.h i40e/i40evf: organize and re-number feature flags 2017-10-06 08:11:32 -07:00
Makefile i40e/i40evf: Add tracepoints 2017-04-19 16:47:31 -07:00