linux/drivers/net/ethernet
Arnd Bergmann f9dc70744d net/xgene: fix error handling during reset
The newly added reset logic uses helper functions for the MMIO that
may fail. However, when the read operation fails, we end up writing
back uninitialized data to the register, as gcc warns:

drivers/net/ethernet/apm/xgene/xgene_enet_xgmac.c: In function 'xgene_enet_link_state':
drivers/net/ethernet/apm/xgene/xgene_enet_xgmac.c:213:2: error: 'data' may be used uninitialized in this function [-Werror=maybe-uninitialized]
drivers/net/ethernet/apm/xgene/xgene_enet_xgmac.c:209:6: note: 'data' was declared here
  u32 data;

We already print a warning to the console log if that happens,
the best alternative that I can see is skip the rest of the reset
sequence if the register value cannot be read: Most likely the
write would fail as well, and if it succeeded, worse things could
happen.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Fixes: 3eb7cb9dc9 ("drivers: net: xgene: XFI PCS reset when link is down")
Cc: Fushen Chen <fchen@apm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-08-29 00:29:46 -04:00
..
3com
8390 net: ethernet: ax88796: avoid null pointer dereference 2016-08-01 13:32:51 -07:00
adaptec
adi net: bfin_mac: Fix a few spelling fixes 2016-08-13 15:14:56 -07:00
aeroflex net: ethernet: greth: use phy_ethtool_{get|set}_link_ksettings 2016-08-08 15:42:21 -07:00
agere Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-07-24 00:53:32 -04:00
allwinner net: ethernet: sun4i-emac: use phy_ethtool_{get|set}_link_ksettings 2016-06-22 16:22:41 -04:00
alteon
altera ethernet: altera: add missing of_node_put 2016-08-01 21:42:57 -07:00
amazon net: ena: change the return type of ena_set_push_mode() to be void. 2016-08-23 17:42:33 -07:00
amd amd-xgbe: Reset running devices after resume from hibernate 2016-08-29 00:25:47 -04:00
apm net/xgene: fix error handling during reset 2016-08-29 00:29:46 -04:00
apple
arc net: arc_emac: add missing of_node_put() in arc_emac_probe() 2016-08-06 00:07:38 -04:00
atheros alx: add tso support 2016-08-26 21:08:10 -07:00
aurora ethernet: aurora: nb8800: add missing of_node_put after calling of_parse_phandle 2016-08-01 21:43:47 -07:00
broadcom net: systemport: Fix ordering in intrl2_*_mask_clear macro 2016-08-25 16:52:44 -07:00
brocade bna: remove global bnad_list_mutex 2016-08-08 15:41:27 -07:00
cadence net: ethernet: macb: Add support for rx_clk 2016-08-18 20:58:42 -07:00
calxeda
cavium liquidio: declare liquidio_set_rxcsum_command static 2016-08-23 16:53:55 -07:00
chelsio cxgb4/cxgb4vf: fix spelling mistake "provissioned" -> "provisioned" 2016-08-28 23:41:46 -04:00
cirrus
cisco net: enic: use correct type specifier 2016-08-01 13:32:52 -07:00
davicom dm9000: Fix irq trigger type setup on non-dt platforms 2016-08-09 15:08:22 -07:00
dec net: fix up a few missing hashtable.h conflict resolutions 2016-08-13 14:51:02 -07:00
dlink
emulex be2net: replace polling with sleeping in the FW completion path 2016-08-08 15:38:27 -07:00
ezchip Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-07-24 00:53:32 -04:00
faraday net/faraday: Disallow using reversed MAC address from hardware 2016-07-20 21:05:18 -07:00
freescale net: ucc_geth: fix spelling mistake "propperty" -> "property" 2016-08-28 23:41:46 -04:00
fujitsu
hisilicon net: hns: remove redundant dev_err call in hns_dsaf_get_cfg() 2016-08-23 17:17:49 -07:00
hp
i825xx
ibm ibmvnic: fix error return code in ibmvnic_probe() 2016-08-25 16:41:00 -07:00
intel ixgbe: Add support for new X557 device 2016-08-20 19:51:25 -07:00
marvell net: ethernet: marvell: mvneta: use new api ethtool_{get|set}_link_ksettings 2016-08-08 15:42:21 -07:00
mediatek net: ethernet: mediatek: modify GDM to send packets to the PDMA for RX 2016-08-26 21:06:58 -07:00
mellanox mlxsw: spectrum: Mirror certain packets to CPU 2016-08-26 13:13:37 -07:00
micrel
microchip enc28j60: Fix race condition in enc28j60 driver 2016-07-02 14:48:14 -04:00
moxa
myricom
natsemi
neterion net: s2io: simplify logical constraint 2016-08-01 13:32:52 -07:00
netronome nfp: check idx is -ENOSPC before using it is an index 2016-07-11 13:52:00 -07:00
nuvoton net: ethernet: nuvoton: fix spelling mistake: "aligment" -> "alignment" 2016-08-18 23:29:43 -07:00
nvidia
nxp net: lpc_eth: Remove unused 'pldat' variable 2016-07-04 23:55:29 -07:00
oki-semi
packetengines
pasemi net: ethernet: pasemi_mac: use phy_ethtool_{get|set}_link_ksettings 2016-07-15 16:41:34 -07:00
qlogic qede: Add support for Tx/Rx-only queues. 2016-08-23 17:11:54 -07:00
qualcomm
rdc net: r6040: Bump version and date 2016-07-05 00:10:30 -07:00
realtek 8139too: fix system hang when there is a tx timeout event. 2016-08-01 21:38:53 -07:00
renesas net: ethernet: renesas: ravb: use new api ethtool_{get|set}_link_ksettings 2016-08-20 22:27:17 -07:00
rocker bridge: switchdev: Add forward mark support for stacked devices 2016-08-26 13:13:36 -07:00
samsung net: ethernet: sxgbe: use phy_ethtool_{get|set}_link_ksettings 2016-06-28 09:12:35 -04:00
seeq
sfc sfc: work around TRIGGER_INTERRUPT command not working on SFC9140 2016-08-26 21:43:52 -07:00
sgi
silan
sis
smsc net: ethernet: smsc9420: use phy_ethtool_{get|set}_link_ksettings 2016-07-15 16:41:35 -07:00
stmicro ethernet: stmicro: stmmac: add missing of_node_put after calling of_parse_phandle 2016-08-01 21:43:49 -07:00
sun
synopsys dwc_eth_qos: Remove deprecated create_singlethread_workqueue 2016-07-17 22:27:39 -07:00
tehuti
ti net: ethernet: ti: cpsw: fix error return code in cpsw_set_channels() 2016-08-26 21:49:41 -07:00
tile timers, driver/net/ethernet/tile: Initialize the egress timer as pinned 2016-07-07 10:25:14 +02:00
toshiba net: ethernet: tc35815: use phy_ethtool_{get|set}_link_ksettings 2016-07-15 16:41:33 -07:00
tundra net/ethernet: tundra: fix dump_eth_one warning in tsi108_eth 2016-08-08 13:08:21 -07:00
via
wiznet
xilinx net: axienet: Fix return value check in axienet_probe() 2016-07-20 14:46:00 -07:00
xircom ethernet: xircom: fix spelling mistakes on "excessive collisions" 2016-06-27 04:19:14 -04:00
xscale net: ethernet: ixp4xx_eth: use phy_ethtool_{get|set}_link_ksettings 2016-07-04 15:59:52 -07:00
dnet.c net: ethernet: dnet: use phy_ethtool_{get|set}_link_ksettings 2016-06-28 05:10:26 -04:00
dnet.h net: ethernet: dnet: use phydev from struct net_device 2016-06-28 05:10:26 -04:00
ec_bhf.c
ethoc.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-07-24 00:53:32 -04:00
fealnx.c
jme.c
jme.h
Kconfig net: ena: Add a driver for Amazon Elastic Network Adapters (ENA) 2016-08-12 17:12:08 -07:00
korina.c
lantiq_etop.c net: ethernet: lantiq_etop: use phy_ethtool_{get|set}_link_ksettings 2016-07-04 15:59:51 -07:00
Makefile net: ena: Add a driver for Amazon Elastic Network Adapters (ENA) 2016-08-12 17:12:08 -07:00
netx-eth.c