net/fec: Don't let ndo_start_xmit return NETDEV_TX_BUSY without link
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Tue, 30 Jul 2013 09:29:40 +0000 (11:29 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 30 Jul 2013 23:05:04 +0000 (16:05 -0700)
commita264b981f2c76e281ef27e7232774bf6c54ec865
tree1875a691e59369b82ecad4dad563302aadbc1662
parenta0db856a95a29efb1c23db55c02d9f0ff4f0db48
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>
drivers/net/ethernet/freescale/fec_main.c