linux/drivers/net/ethernet/freescale
Uwe Kleine-König a264b981f2 net/fec: Don't let ndo_start_xmit return NETDEV_TX_BUSY without link
Don't test for having link and let hardware deal with this situation.

Without this patch I see a machine running an -rt patched Linux being
stuck in sch_direct_xmit when it looses link while there is still a
packet to be sent. In this case the fec_enet_start_xmit routine returned
NETDEV_TX_BUSY which makes the network stack reschedule the packet and
so sch_direct_xmit calls fec_enet_start_xmit again.
I failed to reproduce a complete hang without -rt, but I think the
problem exists there, too.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
2013-07-30 16:05:04 -07:00
..
fs_enet net: Move MII out from under NET_CORE and hide it 2013-06-19 22:22:56 -07:00
fec_main.c net/fec: Don't let ndo_start_xmit return NETDEV_TX_BUSY without link 2013-07-30 16:05:04 -07:00
fec_mpc52xx_phy.c
fec_mpc52xx.c net: ethernet: use platform_{get,set}_drvdata() 2013-05-25 21:27:58 -07:00
fec_mpc52xx.h
fec_ptp.c fec: Only pass pdev in fec_ptp_init() 2013-06-07 14:41:07 -07:00
fec.h net: fec: workaround stop tx during errata ERR006358 2013-07-27 20:14:48 -07:00
fsl_pq_mdio.c net/fsl_pq_mdio: add support for the Fman 1G MDIO controller 2012-08-30 13:29:32 -04:00
gianfar_ethtool.c net: vlan: rename NETIF_F_HW_VLAN_* feature flags to NETIF_F_HW_VLAN_CTAG_* 2013-04-19 14:45:26 -04:00
gianfar_ptp.c net: ethernet: use platform_{get,set}_drvdata() 2013-05-25 21:27:58 -07:00
gianfar_sysfs.c gianfar: Use netdev_<level> when possible 2013-04-14 15:41:49 -04:00
gianfar.c gianfar: Add backwards compatible Single Queue mode polling 2013-06-12 03:16:20 -07:00
gianfar.h gianfar: Remove superfluous kernel_dropped local counter 2013-03-21 12:01:34 -04:00
Kconfig NET: FEC: dynamtic check DMA desc buff type 2013-01-04 15:15:39 -08:00
Makefile net: fec: build fec.c and fec_ptp.c to one module 2013-03-25 12:14:57 -04:00
ucc_geth_ethtool.c ucc_geth: Convert ugeth_<level> to pr_<level> 2013-04-14 15:41:49 -04:00
ucc_geth.c net: ethernet: use platform_{get,set}_drvdata() 2013-05-25 21:27:58 -07:00
ucc_geth.h net: remove skb recycling 2012-10-07 00:40:54 -04:00
xgmac_mdio.c net: ethernet: use platform_{get,set}_drvdata() 2013-05-25 21:27:58 -07:00