diff options
Diffstat (limited to 'drivers/net/e100.c')
-rw-r--r-- | drivers/net/e100.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/net/e100.c b/drivers/net/e100.c index 3e8d0005540f..ef97bfcef9dd 100644 --- a/drivers/net/e100.c +++ b/drivers/net/e100.c | |||
@@ -168,6 +168,7 @@ | |||
168 | #include <linux/ethtool.h> | 168 | #include <linux/ethtool.h> |
169 | #include <linux/string.h> | 169 | #include <linux/string.h> |
170 | #include <linux/firmware.h> | 170 | #include <linux/firmware.h> |
171 | #include <linux/rtnetlink.h> | ||
171 | #include <asm/unaligned.h> | 172 | #include <asm/unaligned.h> |
172 | 173 | ||
173 | 174 | ||
@@ -2280,8 +2281,13 @@ static void e100_tx_timeout_task(struct work_struct *work) | |||
2280 | 2281 | ||
2281 | netif_printk(nic, tx_err, KERN_DEBUG, nic->netdev, | 2282 | netif_printk(nic, tx_err, KERN_DEBUG, nic->netdev, |
2282 | "scb.status=0x%02X\n", ioread8(&nic->csr->scb.status)); | 2283 | "scb.status=0x%02X\n", ioread8(&nic->csr->scb.status)); |
2283 | e100_down(netdev_priv(netdev)); | 2284 | |
2284 | e100_up(netdev_priv(netdev)); | 2285 | rtnl_lock(); |
2286 | if (netif_running(netdev)) { | ||
2287 | e100_down(netdev_priv(netdev)); | ||
2288 | e100_up(netdev_priv(netdev)); | ||
2289 | } | ||
2290 | rtnl_unlock(); | ||
2285 | } | 2291 | } |
2286 | 2292 | ||
2287 | static int e100_loopback_test(struct nic *nic, enum loopback loopback_mode) | 2293 | static int e100_loopback_test(struct nic *nic, enum loopback loopback_mode) |