linux/drivers/net/ethernet/stmicro/stmmac
Lars Persson 45ab4b13e4 stmmac: reset last TSO segment size after device open
The mss variable tracks the last max segment size sent to the TSO
engine. We do not update the hardware as long as we receive skb:s with
the same value in gso_size.

During a network device down/up cycle (mapped to stmmac_release() and
stmmac_open() callbacks) we issue a reset to the hardware and it
forgets the setting for mss. However we did not zero out our mss
variable so the next transmission of a gso packet happens with an
undefined hardware setting.

This triggers a hang in the TSO engine and eventuelly the netdev
watchdog will bark.

Fixes: f748be531d ("stmmac: support new GMAC4")
Signed-off-by: Lars Persson <larper@axis.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-12-03 09:47:42 -05:00
..
altr_tse_pcs.c net: ethernet: stmmac: Convert timers to use timer_setup() 2017-10-18 12:39:37 +01:00
altr_tse_pcs.h
chain_mode.c net: stmmac: set total length of the packet to be transmitted in TDES3 2017-04-13 12:40:09 -04:00
common.h net: stmmac: Disable flow ctrl for RX AVB queues and really enable TX AVB queues 2017-10-14 11:12:08 -07:00
descs_com.h
descs.h
dwmac4_core.c net: stmmac: fix LPI transitioning for dwmac4 2017-11-14 22:04:56 +09:00
dwmac4_descs.c net: stmmac: Prevent infinite loop in get_rx_timestamp_status() 2017-10-22 02:50:40 +01:00
dwmac4_descs.h
dwmac4_dma.c net: stmmac: Disable flow ctrl for RX AVB queues and really enable TX AVB queues 2017-10-14 11:12:08 -07:00
dwmac4_dma.h net: stmmac: rx and tx ring length prepared for multiple queues 2017-03-15 14:44:32 -07:00
dwmac4_lib.c net: stmmac: prepare rx/tx set tail function for multiple queues 2017-03-15 14:44:32 -07:00
dwmac4.h net: stmmac: fix LPI transitioning for dwmac4 2017-11-14 22:04:56 +09:00
dwmac100_core.c net-next: stmmac: rework the speed selection 2017-05-25 13:08:35 -04:00
dwmac100_dma.c net: stmmac: Adjust dump offset of DMA registers for ethtool 2017-07-24 16:19:10 -07:00
dwmac100.h
dwmac1000_core.c net-next: stmmac: rework the speed selection 2017-05-25 13:08:35 -04:00
dwmac1000_dma.c net: stmmac: Adjust dump offset of DMA registers for ethtool 2017-07-24 16:19:10 -07:00
dwmac1000.h
dwmac_dma.h net: stmmac: Adjust dump offset of DMA registers for ethtool 2017-07-24 16:19:10 -07:00
dwmac_lib.c net: stmmac: dwmac_lib: fix interchanged sleep/timeout values in DMA reset function 2017-10-13 10:19:52 -07:00
dwmac-anarion.c net: stmmac: Add Adaptrum Anarion GMAC glue layer 2017-08-06 21:31:32 -07:00
dwmac-dwc-qos-eth.c net: stmmac: dwc-qos-eth: Fix typo in DT bindings parsing 2017-10-27 23:23:19 +09:00
dwmac-generic.c
dwmac-ipq806x.c net: ethernet: stmmac: Clean up dead code 2017-10-08 21:19:07 -07:00
dwmac-lpc18xx.c
dwmac-meson8b.c net: stmmac: constify clk_div_table 2017-08-29 10:56:42 -07:00
dwmac-meson.c
dwmac-oxnas.c
dwmac-rk.c net: stmmac: dwmac-rk: Add RK3128 GMAC support 2017-10-03 15:39:56 -07:00
dwmac-socfpga.c net: stmmac: socfgpa: Ensure emac bit set in sys manager for MII/GMII/SGMII. 2017-08-23 20:26:58 -07:00
dwmac-sti.c
dwmac-stm32.c ethernet: dwmac-stm32: Fix copyright 2017-11-29 10:08:09 -05:00
dwmac-sun8i.c net: stmmac: dwmac-sun8i: fix allwinner,leds-active-low handling 2017-11-30 09:44:56 -05:00
dwmac-sunxi.c
enh_desc.c net: stmmac: set total length of the packet to be transmitted in TDES3 2017-04-13 12:40:09 -04:00
Kconfig net: stmmac: dwmac-sun8i: Handle integrated/external MDIOs 2017-10-27 11:58:49 +09:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mmc_core.c
mmc.h
norm_desc.c net: stmmac: set total length of the packet to be transmitted in TDES3 2017-04-13 12:40:09 -04:00
ring_mode.c net: stmmac: set total length of the packet to be transmitted in TDES3 2017-04-13 12:40:09 -04:00
stmmac_ethtool.c net: stmmac: Adjust dump offset of DMA registers for ethtool 2017-07-24 16:19:10 -07:00
stmmac_hwtstamp.c
stmmac_main.c stmmac: reset last TSO segment size after device open 2017-12-03 09:47:42 -05:00
stmmac_mdio.c net: stmmac: Delete dead code for MDIO registration 2017-09-05 14:36:18 -07:00
stmmac_pci.c stmmac: pci: Use dmi_system_id table for retrieving PHY addresses 2017-06-22 13:39:57 -04:00
stmmac_pcs.h
stmmac_platform.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-11-04 09:26:51 +09:00
stmmac_platform.h
stmmac_ptp.c net: ethernet: make ptp_clock_info const 2017-08-22 11:04:51 -07:00
stmmac_ptp.h stmmac: fix ptp header for GMAC3 hw timestamp 2017-06-09 12:39:25 -04:00
stmmac.h net-next: stmmac: Convert old_link to bool 2017-05-25 13:08:35 -04:00