diff options
author | John Fastabend <john.r.fastabend@intel.com> | 2010-04-26 22:13:39 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-04-27 15:53:29 -0400 |
commit | c0dfb90e5b2d41c907de9b624657a6688541837e (patch) | |
tree | ce662b4bb4c737c4e398ea98e229784b396ac7f5 /kernel/signal.c | |
parent | ff846f52935e6c8dfb0c97df7c2c1bf777454684 (diff) |
ixgbe: ixgbe_down needs to stop dev_watchdog
There is a small race between when the tx queues are stopped
and when netif_carrier_off() is called in ixgbe_down. If the
dev_watchdog() timer fires during this time it is possible for
a false tx timeout to occur.
This patch moves the netif_carrier_off() so that it is called before
the tx queues are stopped preventing the dev_watchdog timer from
detecting false tx timeouts. The race is seen occosionally when
FCoE or DCB settings are being configured or changed.
Testing note, running ifconfig up/down will not reproduce this
issue because dev_open/dev_close call dev_deactivate() and then
dev_activate().
Signed-off-by: John Fastabend <john.r.fastabend@intel.com>
Acked-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'kernel/signal.c')
0 files changed, 0 insertions, 0 deletions