linux-hardened/drivers/net/ethernet
Mitch Williams 1418c34581 i40evf: handle many MAC filters correctly
When a lot (many hundreds) of MAC or VLAN filters are added at one time,
we can overflow the Admin Queue buffer size with all the requests.
Unfortunately, the driver would then calculate the message size
incorrectly, causing it to be rejected by the PF. Furthermore, there was
no mechanism to trigger another request to allow for configuring the
rest of the filters that didn't fit into the first request.

To fix this, recalculate the correct buffer size when we detect the
overflow condition instead of just assuming the max buffer size. Also,
don't clear the request bit in adapter->aq_required when we have an
overflow, so that the rest of the filters can be processed later.

Change-ID: Idd7cbbc5af31315e0dcb1b10e6a02ad9817ce65c
Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25 10:05:57 -08:00
..
3com 3c59x: Add BQL support for 3c59x ethernet driver. 2015-08-24 12:20:58 -07:00
8390 net: mac8390: Allow modular build 2015-09-29 21:11:12 -07:00
adaptec
adi
aeroflex drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
agere
allwinner net: sun4i-emac: Properly free resources on probe failure and remove 2015-10-21 19:47:45 -07:00
alteon
altera net: eth: altera: Fix the initial device operstate 2015-09-09 12:10:15 -07:00
amd net: move skb_mark_napi_id() into core networking stack 2015-11-18 16:17:41 -05:00
apm drivers: net: xgene: optimizing the code 2015-11-24 14:34:41 -05:00
apple net: macmace: Allow modular build 2015-09-29 21:11:13 -07:00
arc net: arc: Fix module autoload for OF platform driver 2015-09-21 16:08:20 -07:00
atheros drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
broadcom bnx2x: Utilize FW 7.13.1.0. 2015-11-22 12:19:06 -05:00
brocade bna: fix error handling 2015-09-29 13:49:53 -07:00
cadence
calxeda
cavium net: thunder: Check for driver data in nicvf_remove() 2015-11-16 16:24:44 -05:00
chelsio net: provide generic busy polling to all NAPI drivers 2015-11-18 16:17:42 -05:00
cirrus
cisco net: provide generic busy polling to all NAPI drivers 2015-11-18 16:17:42 -05:00
davicom dm9000: fix a typo 2015-09-08 22:44:42 -07:00
dec drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
dlink dl2k: Implement suspend 2015-11-20 14:48:27 -05:00
emulex net: provide generic busy polling to all NAPI drivers 2015-11-18 16:17:42 -05:00
ezchip NET: nps_enet: minor namespace cleanup 2015-08-23 16:08:54 -07:00
faraday
freescale net: fec: no need to test for the return type of of_property_read_u32 2015-11-24 16:09:47 -05:00
fujitsu
hisilicon net: hisilicon: NET_VENDOR_HISILICON should depend on HAS_DMA 2015-11-09 11:19:29 -05:00
hp
i825xx
ibm drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
intel i40evf: handle many MAC filters correctly 2015-11-25 10:05:57 -08:00
marvell net: mvneta: Fix memory use after free. 2015-11-09 21:48:14 -05:00
mellanox mlxsw: spectrum: Add error paths to __mlxsw_sp_port_vlans_add 2015-11-20 11:06:03 -05:00
micrel Merge remote-tracking branches 'spi/topic/omap-100k', 'spi/topic/omap-uwire', 'spi/topic/owner', 'spi/topic/pxa' and 'spi/topic/pxa2xx' into spi-next 2015-11-04 11:02:12 +00:00
microchip net: encx24j600: move rev announcement to probe function 2015-11-20 10:45:20 -05:00
moxa net: moxa: Fix module autoload for OF platform driver 2015-09-21 16:09:02 -07:00
myricom net: provide generic busy polling to all NAPI drivers 2015-11-18 16:17:42 -05:00
natsemi
neterion drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
nuvoton
nvidia forcedeth: fix unilateral interrupt disabling in netpoll path 2015-10-27 19:45:23 -07:00
nxp net: lpc_eth: fix warnings caused by enabling unprepared clock 2015-10-05 03:41:12 -07:00
octeon drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
oki-semi drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
packetengines
pasemi
qlogic net: add netif_tx_napi_add() 2015-11-18 16:17:41 -05:00
qualcomm spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
rdc
realtek r8169: fix kasan reported skb use-after-free. 2015-11-12 13:51:01 -05:00
renesas sh_eth: Remove obsolete r8a777x-ether platform_device_id entry 2015-11-24 16:48:17 -05:00
rocker net: add netif_tx_napi_add() 2015-11-18 16:17:41 -05:00
samsung
seeq
sfc net: provide generic busy polling to all NAPI drivers 2015-11-18 16:17:42 -05:00
sgi
silan
sis
smsc net: smsc911x: Reset PHY during initialization 2015-11-16 14:43:14 -05:00
stmicro stmmac: avoid ipq806x constant overflow warning 2015-11-12 16:11:49 -05:00
sun drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
synopsys dwc_eth_qos: Delete an unnecessary check before the function call "of_node_put" 2015-11-07 13:17:32 -05:00
tehuti drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
ti net: add netif_tx_napi_add() 2015-11-18 16:17:41 -05:00
tile
toshiba
tundra
via via-velocity: unconditionally drop frames with bad l2 length 2015-11-17 14:37:16 -05:00
wiznet
xilinx drivers/net: get rid of unnecessary initializations in .get_drvinfo() 2015-10-16 00:24:10 -07:00
xircom
xscale
dnet.c
dnet.h
ec_bhf.c
ethoc.c net/ethoc: support big-endian register layout 2015-09-23 15:33:15 -07:00
fealnx.c
jme.c net: jme: use kzalloc() instead of kmalloc+memset 2015-09-09 17:06:00 -07:00
jme.h
Kconfig ipg: Remove ipg driver 2015-11-16 17:11:31 -05:00
korina.c
lantiq_etop.c
Makefile ipg: Remove ipg driver 2015-11-16 17:11:31 -05:00
netx-eth.c