On 08/01/16 18:48, Conn O'Griofa wrote:
Unfortunately, your proposed patch doesn't work. When I trigger the timeout
condition, a tx timeout occurs and the interface doesn't recover correctly:
I'm not able to test recompiles for a few hours at least, but:
* After your patch failed, I already tested quick rebuild, changing
ag71xx_restart_work_func to use:
rtnl_lock();
ag71xx_stop(ag->dev);
ag71xx_open(ag->dev);
rtnl_unlock();
With that change to your patch, the link adjust was triggered before the tx
timeout was triggered (expected), but the sirq storm still occurred.
* In ag71xx_hw_enable, netif_start_queue is issued. Since this function is used
for the fast restart, that should probably be changed to netif_wake_queue so
that the kernel will check for anything pending in the queue to be sent (which
is certain to be true). I'll check this as soon as it's possible.
Conn
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel