i.Mx6Quad - eth0: tx queue full!
From: Troy Kisky <hidden>
Date: 2013-01-29 18:46:40
Also in:
netdev
On 1/29/2013 9:34 AM, Vikram Narayanan wrote:
On 1/29/2013 1:17 AM, Troy Kisky wrote:quoted
On 1/28/2013 10:39 AM, Vikram Narayanan wrote:quoted
Running the latest head <linux-2.6.git> on an i.Mx6Quad based platform gives me the below error when flooded with ping requests. == Start log == [ 2555.004031] ------------[ cut here ]------------ [ 2555.009740] WARNING: at net/sched/sch_generic.c:254 dev_watchdog+0x298/0x2b8() [ 2555.018721] NETDEV WATCHDOG: eth0 (fec): transmit queue 0 timed outI think the tx interrupt status bit was lost. The packets were transmitted, but the interrupt never happened. The controller should have been reset here, but perhaps a bug with the reset code. Are you using the mainline kernel, or a version Freescale's kernel.I tried with both the kernels. Freescale's and mainline results in the same error.quoted
mainline fec_restart does not reset tx_full You can try adding fep->tx_full = 0;With this there was no improvement.
I have fixed this bug (and more) on Freescale's kernel (imx-3.0.35_1.1.0). I created a branch you can try. Feel free to port to mainline. This is the patch that should fix your problem fec: clear TX_FULL in fec_restart git://github.com/boundarydevices/linux-imx6.git ethernet_test Please let me know results. Thanks Troy