Message ID | 20100424121127.084b9766@linux.intel.com |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
From: Alan Cox <alan@linux.intel.com> Date: Sat, 24 Apr 2010 12:11:27 +0100 > No idea why it won't apply - I guess net has diverged from -next in > this area. Other problem is not typing "stg ref" before "stg export" It has, the debug print statement above the lines you are changing are completely different. Please generate this patch against net-2.6 so I can apply it, thanks Alan. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
From: David Miller <davem@davemloft.net> Date: Sat, 24 Apr 2010 19:58:59 -0700 (PDT) > Please generate this patch against net-2.6 so I can apply it, thanks > Alan. Nevermind, I took care of this for you. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/e100.c b/drivers/net/e100.c index 3e8d000..ef97bfc 100644 --- a/drivers/net/e100.c +++ b/drivers/net/e100.c @@ -168,6 +168,7 @@ #include <linux/ethtool.h> #include <linux/string.h> #include <linux/firmware.h> +#include <linux/rtnetlink.h> #include <asm/unaligned.h> @@ -2280,8 +2281,13 @@ static void e100_tx_timeout_task(struct work_struct *work) netif_printk(nic, tx_err, KERN_DEBUG, nic->netdev, "scb.status=0x%02X\n", ioread8(&nic->csr->scb.status)); - e100_down(netdev_priv(netdev)); - e100_up(netdev_priv(netdev)); + + rtnl_lock(); + if (netif_running(netdev)) { + e100_down(netdev_priv(netdev)); + e100_up(netdev_priv(netdev)); + } + rtnl_unlock(); } static int e100_loopback_test(struct nic *nic, enum loopback loopback_mode)