i40e: store MAC/VLAN filters in a hash with the MAC Address as key
Replace the mac_filter_list with a static size hash table of 8bits. The primary advantage of this is a decrease in latency of operations related to searching for specific MAC filters, including .set_rx_mode. Using a linked list resulted in several locations which were O(n^2). Using a hash table should give us latency growth closer to O(n*log(n)). Change-ID: I5330bd04053b880e670210933e35830b95948ebb Signed-off-by:Jacob Keller <jacob.e.keller@intel.com> Tested-by:
Andrew Bowers <andrewx.bowers@intel.com>
Showing
- drivers/net/ethernet/intel/i40e/i40e.h 20 additions, 4 deletionsdrivers/net/ethernet/intel/i40e/i40e.h
- drivers/net/ethernet/intel/i40e/i40e_debugfs.c 2 additions, 2 deletionsdrivers/net/ethernet/intel/i40e/i40e_debugfs.c
- drivers/net/ethernet/intel/i40e/i40e_fcoe.c 2 additions, 2 deletionsdrivers/net/ethernet/intel/i40e/i40e_fcoe.c
- drivers/net/ethernet/intel/i40e/i40e_main.c 117 additions, 81 deletionsdrivers/net/ethernet/intel/i40e/i40e_main.c
- drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c 20 additions, 18 deletionsdrivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c
Loading
Please register or sign in to comment