linux_dsm_epyc7002/drivers/net/ethernet
Jack Morgenstein 4cbe4dac82 net/mlx4_core: Avoid delays during VF driver device shutdown
Some Hypervisors detach VFs from VMs by instantly causing an FLR event
to be generated for a VF.

In the mlx4 case, this will cause that VF's comm channel to be disabled
before the VM has an opportunity to invoke the VF device's "shutdown"
method.

For such Hypervisors, there is a race condition between the VF's
shutdown method and its internal-error detection/reset thread.

The internal-error detection/reset thread (which runs every 5 seconds) also
detects a disabled comm channel. If the internal-error detection/reset
flow wins the race, we still get delays (while that flow tries repeatedly
to detect comm-channel recovery).

The cited commit fixed the command timeout problem when the
internal-error detection/reset flow loses the race.

This commit avoids the unneeded delays when the internal-error
detection/reset flow wins.

Fixes: d585df1c5c ("net/mlx4_core: Avoid command timeouts during VF driver device shutdown")
Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
Reported-by: Simon Xiao <sixiao@microsoft.com>
Signed-off-by: Tariq Toukan <tariqt@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-03-16 20:14:51 -07:00
..
3com
8390
adaptec
adi scripts/spelling.txt: add "overwritting" pattern and fix typo instances 2017-02-27 18:43:47 -08:00
aeroflex aeroflex/greth: use napi_complete_done() 2017-02-05 16:11:57 -05:00
agere
alacritech
allwinner
alteon
altera
amazon net: ena: remove superfluous check in ena_remove() 2017-02-20 10:22:59 -05:00
amd amd-xgbe: Fix jumbo MTU processing on newer hardware 2017-03-15 15:36:59 -07:00
apm drivers: net: xgene: Fix crash on DT systems 2017-03-02 12:47:23 -08:00
apple
aquantia net: ethernet: aquantia: call set_irq_affinity_hint before free_irq 2017-03-12 23:08:35 -07:00
arc
atheros
aurora
broadcom net: bcmgenet: Do not suspend PHY if Wake-on-LAN is enabled 2017-03-15 15:35:30 -07:00
brocade
cadence lib/vsprintf.c: remove %Z support 2017-02-27 18:43:47 -08:00
calxeda
cavium net: thunderx: Allow IPv6 frames with zero UDP checksum 2017-03-09 13:12:41 -08:00
chelsio Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-03-04 17:31:39 -08:00
cirrus ep93xx_eth: add GRO support 2017-02-05 16:11:57 -05:00
cisco enic: add vxlan offload on tx path 2017-02-09 17:24:29 -05:00
davicom
dec
dlink
emulex
ezchip
faraday drivers: net: ethernet: remove incorrect __exit markups 2017-03-02 14:33:49 -08:00
freescale dpaa_eth: implement ioctl() for PHY-related ops 2017-02-20 22:21:23 -05:00
fujitsu
hisilicon net: hip04: Omit private ndo_get_stats function 2017-02-14 15:03:21 -05:00
hp
i825xx
ibm net: ibm: emac: fix regression caused by emac_dt_phy_probe() 2017-03-08 22:15:46 -08:00
intel ixgbe: Limit use of 2K buffers on architectures with 256B or larger cache lines 2017-03-02 18:03:39 -08:00
marvell net: mvpp2: enable building on 64-bit platforms 2017-02-21 13:16:17 -05:00
mediatek
mellanox net/mlx4_core: Avoid delays during VF driver device shutdown 2017-03-16 20:14:51 -07:00
micrel scripts/spelling.txt: add "overrided" pattern and fix typo instances 2017-02-27 18:43:47 -08:00
microchip net: microchip: encx24j600: use new api ethtool_{get|set}_link_ksettings 2017-02-12 22:32:17 -05:00
moxa
myricom net: myricom: myri10ge: use new api ethtool_{get|set}_link_ksettings 2017-02-12 22:32:17 -05:00
natsemi net: natsemi: ns83820: use new api ethtool_{get|set}_link_ksettings 2017-02-12 22:32:17 -05:00
neterion net: s2io: fix typo argumnet argument 2017-02-26 11:57:58 -05:00
netronome nfp: correct DMA direction in XDP DMA sync 2017-03-03 09:46:53 -08:00
nuvoton net: nuvoton: w90p910: use new api ethtool_{get|set}_link_ksettings 2017-02-12 22:32:17 -05:00
nvidia forcedeth: Remove return from a void function 2017-02-23 10:55:07 -05:00
nxp
oki-semi net: oki-semi: pch_gbe: use new api ethtool_{get|set}_link_ksettings 2017-02-17 12:00:14 -05:00
packetengines net: hamachi: use new api ethtool_{get|set}_link_ksettings 2017-02-17 14:06:41 -05:00
pasemi
qlogic Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-03-14 21:31:23 -07:00
qualcomm net: qualcomm: qca: use new api ethtool_{get|set}_link_ksettings 2017-02-20 22:19:08 -05:00
rdc
realtek
renesas
rocker
samsung
seeq drivers: net: ethernet: remove incorrect __exit markups 2017-03-02 14:33:49 -08:00
sfc Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-03-04 17:31:39 -08:00
sgi drivers: net: ethernet: remove incorrect __exit markups 2017-03-02 14:33:49 -08:00
silan
sis scripts/spelling.txt: add "comsume(r)" pattern and fix typo instances 2017-02-27 18:43:47 -08:00
smsc net: Revert ksettings conversions. 2017-03-08 22:17:10 -08:00
stmicro net: stmmac: unify registers dumps methods 2017-02-24 11:42:33 -05:00
sun net: Revert ksettings conversions. 2017-03-08 22:17:10 -08:00
tehuti
ti net: ethernet: ti: cpsw: correct ale dev to cpsw 2017-02-17 11:12:32 -05:00
tile
toshiba net: Revert ksettings conversions. 2017-03-08 22:17:10 -08:00
tundra
via
wiznet
xilinx Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-02-16 19:34:01 -05:00
xircom
xscale
dnet.c
dnet.h
ec_bhf.c
ethoc.c net: ethoc: Use eth_hw_addr_random() 2017-02-17 12:42:24 -05:00
fealnx.c
jme.c
jme.h
Kconfig
korina.c
lantiq_etop.c
Makefile
netx-eth.c