Star64_linux/drivers/net/ethernet/sfc
Daniel Pieczko ab8b1f7cf8 sfc: support cascaded multicast filters
If the workaround to support cascaded multicast filters ("workaround_26807") is
enabled, the broadcast filter and individual multicast filters are not inserted
when in promiscuous or allmulti mode.

There is a race while inserting and removing filters when entering and leaving
promiscuous mode.  When changing promiscuous state with cascaded multicast
filters, the old multicast filters are removed before inserting the new filters
to avoid duplicating packets; this can lead to dropped packets until all
filters have been inserted.

The efx_nic:mc_promisc flag is added to record the presence of a multicast
promiscuous filter; this gives a simple way to tell if the promiscuous state is
changing.

Signed-off-by: Edward Cree <ecree@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-07-21 22:21:32 -07:00
..
bitfield.h
ef10.c sfc: support cascaded multicast filters 2015-07-21 22:21:32 -07:00
ef10_regs.h
ef10_sriov.c sfc: Ensure down_write(&filter_sem) and up_write() are matched before calling efx_net_open() 2015-07-08 16:18:52 -07:00
ef10_sriov.h sfc: add legacy method for changing a PF's MAC address 2015-07-08 16:07:33 -07:00
efx.c sfc: Report TX completions to BQL after all TX events in interrupt 2015-07-09 00:00:40 -07:00
efx.h sfc: add ndo_set_vf_mac() function for EF10 2015-05-21 18:43:54 -04:00
enum.h sfc: Change entity reset on MC reboot to a new datapath-only reset. 2015-05-21 18:43:54 -04:00
ethtool.c sfc: protect filter table against use-after-free 2015-05-21 18:43:53 -04:00
falcon.c sfc: Bind the sfc driver to any available VF's 2015-05-09 16:16:48 -04:00
falcon_boards.c
farch.c
farch_regs.h
filter.h
io.h
Kconfig sfc: add sysfs entry to control MCDI tracing 2015-05-27 13:54:51 -04:00
Makefile sfc: Enable VF's via a write to the sysfs file sriov_numvfs 2015-05-09 16:16:46 -04:00
mcdi.c sfc: add output flag decoding to efx_mcdi_set_workaround 2015-07-21 22:21:32 -07:00
mcdi.h sfc: add output flag decoding to efx_mcdi_set_workaround 2015-07-21 22:21:32 -07:00
mcdi_mon.c
mcdi_pcol.h sfc: update MCDI protocol definitions 2015-07-21 22:21:31 -07:00
mcdi_port.c sfc: suppress ENOENT error messages from MC_CMD_MAC_STATS 2015-06-02 12:57:29 -07:00
mdio_10g.c
mdio_10g.h
mtd.c
net_driver.h sfc: support cascaded multicast filters 2015-07-21 22:21:32 -07:00
nic.c
nic.h sfc: enable cascaded multicast filters in MCFW 2015-07-21 22:21:31 -07:00
phy.h
ptp.c sfc: Initialise MCDI buffers to 0 on declaration. 2015-05-21 18:43:53 -04:00
qt202x_phy.c
rx.c sfc: free multiple Rx buffers when required 2015-05-31 17:36:20 -07:00
selftest.c
selftest.h
siena.c siena: only report generic filters in get_ts_info 2015-07-17 19:59:06 -07:00
siena_sriov.c sfc: save old MAC address in case sriov_mac_address_changed fails 2015-05-21 18:43:53 -04:00
siena_sriov.h sfc: save old MAC address in case sriov_mac_address_changed fails 2015-05-21 18:43:53 -04:00
sriov.c sfc: Implement ndo_gets_phys_port_id() for EF10 VFs 2015-06-02 12:57:26 -07:00
sriov.h sfc: Implement ndo_gets_phys_port_id() for EF10 VFs 2015-06-02 12:57:26 -07:00
tenxpress.c
tx.c sfc: Report TX completions to BQL after all TX events in interrupt 2015-07-09 00:00:40 -07:00
txc43128_phy.c
vfdi.h
workarounds.h