linux_dsm_epyc7002/drivers/net/ethernet/intel
Jacob Keller 435c084aad i40e: set broadcast promiscuous mode for each active VLAN
A previous workaround added to ensure receipt of all broadcast frames
incorrectly set the broadcast promiscuous mode unconditionally
regardless of active VLAN status.

Replace this partial workaround with a complete solution that sets the
broadcast promiscuous filters in i40e_sync_vsi_filters. This new method
sets the promiscuous mode based on when broadcast filters are added or
removed.

I40E_VLAN_ANY will request a broadcast filter for all VLANs, (as we're
in untagged mode) while a broadcast filter on a specific VLAN will only
request broadcast for that VLAN.

Thus, we restore addition of broadcast filter to the array, but we add
special handling for these such that they enable the broadcast
promiscuous mode instead of being sent as regular filters.

The end result is that we will correctly receive all broadcast packets
(even those with a *source* address equal to the broadcast address) but
will not receive packets for which we don't have an active VLAN filter.

Change-ID: I7d0585c5cec1a5bf55bf533b42e5e817d5db6a2d
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2016-12-02 23:32:37 -08:00
..
e1000 ethernet/intel: use core min/max MTU checking 2016-10-18 11:34:18 -04:00
e1000e ethernet/intel: use core min/max MTU checking 2016-10-18 11:34:18 -04:00
fm10k ethernet/intel: use core min/max MTU checking 2016-10-18 11:34:18 -04:00
i40e i40e: set broadcast promiscuous mode for each active VLAN 2016-12-02 23:32:37 -08:00
i40evf i40evf: protect against NULL msix_entries and q_vectors pointers 2016-12-02 23:19:36 -08:00
igb ptp: igb: Use the high resolution frequency method. 2016-11-09 21:19:53 -05:00
igbvf ethernet/intel: use core min/max MTU checking 2016-10-18 11:34:18 -04:00
ixgb ethernet/intel: use core min/max MTU checking 2016-10-18 11:34:18 -04:00
ixgbe ixgbe: ixgbe_atr() compute l4_proto only if non-paged data has network/transport headers 2016-11-04 17:36:45 -07:00
ixgbevf ixgbevf: Handle previously-freed msix_entries 2016-11-04 17:38:10 -07:00
e100.c ethernet/intel: use core min/max MTU checking 2016-10-18 11:34:18 -04:00
Kconfig ixgbe: Replace ndo_add/del_vxlan_port with ndo_add/del_udp_enc_port 2016-06-17 20:23:30 -07:00
Makefile fm10k: Add skeletal frame for Intel(R) FM10000 Ethernet Switch Host Interface Driver 2014-09-23 03:59:13 -07:00