diff options
author | David S. Miller <davem@davemloft.net> | 2011-04-19 03:21:33 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-04-19 03:21:33 -0400 |
commit | e1943424e43974f85b82bb31eaf832823bf49ce7 (patch) | |
tree | 00a2dda7454ba186c0be4bfb8d08b7f74c3cd98c /net/core/dev.c | |
parent | 88230fd586b4ccc5ffe6d6c2df8cdc495e89ad83 (diff) | |
parent | 0553c891fabd287726b41076cfd03fe7e5ab596f (diff) |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts:
drivers/net/bnx2x/bnx2x_ethtool.c
Diffstat (limited to 'net/core/dev.c')
-rw-r--r-- | net/core/dev.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/net/core/dev.c b/net/core/dev.c index f523eee3141c..3871bf69a386 100644 --- a/net/core/dev.c +++ b/net/core/dev.c | |||
@@ -5209,11 +5209,15 @@ u32 netdev_fix_features(struct net_device *dev, u32 features) | |||
5209 | } | 5209 | } |
5210 | 5210 | ||
5211 | /* TSO requires that SG is present as well. */ | 5211 | /* TSO requires that SG is present as well. */ |
5212 | if ((features & NETIF_F_TSO) && !(features & NETIF_F_SG)) { | 5212 | if ((features & NETIF_F_ALL_TSO) && !(features & NETIF_F_SG)) { |
5213 | netdev_info(dev, "Dropping NETIF_F_TSO since no SG feature.\n"); | 5213 | netdev_info(dev, "Dropping TSO features since no SG feature.\n"); |
5214 | features &= ~NETIF_F_TSO; | 5214 | features &= ~NETIF_F_ALL_TSO; |
5215 | } | 5215 | } |
5216 | 5216 | ||
5217 | /* TSO ECN requires that TSO is present as well. */ | ||
5218 | if ((features & NETIF_F_ALL_TSO) == NETIF_F_TSO_ECN) | ||
5219 | features &= ~NETIF_F_TSO_ECN; | ||
5220 | |||
5217 | /* Software GSO depends on SG. */ | 5221 | /* Software GSO depends on SG. */ |
5218 | if ((features & NETIF_F_GSO) && !(features & NETIF_F_SG)) { | 5222 | if ((features & NETIF_F_GSO) && !(features & NETIF_F_SG)) { |
5219 | netdev_info(dev, "Dropping NETIF_F_GSO since no SG feature.\n"); | 5223 | netdev_info(dev, "Dropping NETIF_F_GSO since no SG feature.\n"); |