# HG changeset patch # User Florian Pose # Date 1343039022 -7200 # Node ID d46f2668a409265285c99b88eaf3e6c68eb18d89 # Parent f7451c2c274f2825f8c4b43c938639fa0ee52bb5 Applied ethtool patch from Jun Yuan. diff -r f7451c2c274f -r d46f2668a409 devices/e1000e/ethtool-2.6.33-ethercat.c --- a/devices/e1000e/ethtool-2.6.33-ethercat.c Fri Jul 13 13:16:18 2012 +0200 +++ b/devices/e1000e/ethtool-2.6.33-ethercat.c Mon Jul 23 12:23:42 2012 +0200 @@ -378,6 +378,9 @@ { struct e1000_adapter *adapter = netdev_priv(netdev); + if (adapter->ecdev) + return -EBUSY; + if (data) adapter->flags |= FLAG_RX_CSUM_ENABLED; else @@ -397,10 +400,6 @@ static int e1000_set_tx_csum(struct net_device *netdev, u32 data) { - struct e1000_adapter *adapter = netdev_priv(netdev); - if (adapter->ecdev) - return -EBUSY; - if (data) netdev->features |= NETIF_F_HW_CSUM; else @@ -1945,6 +1944,10 @@ static int e1000_nway_reset(struct net_device *netdev) { struct e1000_adapter *adapter = netdev_priv(netdev); + + if (adapter->ecdev) + return -EBUSY; + if (netif_running(netdev)) e1000e_reinit_locked(adapter); return 0;