diff options
author | David S. Miller <davem@sunset.davemloft.net> | 2006-08-01 03:00:12 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-08-02 16:38:30 -0400 |
commit | b60dfc6c20bd5f19de0083362ce377c89b1e5a24 (patch) | |
tree | f085ddb2e7c99d6e753b0fe7b973569a17ceefee /net/core | |
parent | 3ab720881b6e36bd5190a3a11cee8d8d067c4ad7 (diff) |
[NET]: Kill the WARN_ON() calls for checksum fixups.
We have a more complete solution in the works, involving
the seperation of CHECKSUM_HW on input vs. output, and
having netfilter properly do incremental checksums.
But that is a very involved patch and is thus 2.6.19
material.
What we have now is infinitely better than the past,
wherein all TSO packets were dropped due to corrupt
checksums as soon at the NAT module was loaded. At
least now, the checksums do get fixed up, it just
isn't the cleanest nor most optimal solution.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core')
-rw-r--r-- | net/core/dev.c | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/net/core/dev.c b/net/core/dev.c index 4d2b5167d7f5..5b630cece707 100644 --- a/net/core/dev.c +++ b/net/core/dev.c | |||
@@ -1166,11 +1166,6 @@ int skb_checksum_help(struct sk_buff *skb, int inward) | |||
1166 | goto out_set_summed; | 1166 | goto out_set_summed; |
1167 | 1167 | ||
1168 | if (unlikely(skb_shinfo(skb)->gso_size)) { | 1168 | if (unlikely(skb_shinfo(skb)->gso_size)) { |
1169 | static int warned; | ||
1170 | |||
1171 | WARN_ON(!warned); | ||
1172 | warned = 1; | ||
1173 | |||
1174 | /* Let GSO fix up the checksum. */ | 1169 | /* Let GSO fix up the checksum. */ |
1175 | goto out_set_summed; | 1170 | goto out_set_summed; |
1176 | } | 1171 | } |
@@ -1220,11 +1215,6 @@ struct sk_buff *skb_gso_segment(struct sk_buff *skb, int features) | |||
1220 | __skb_pull(skb, skb->mac_len); | 1215 | __skb_pull(skb, skb->mac_len); |
1221 | 1216 | ||
1222 | if (unlikely(skb->ip_summed != CHECKSUM_HW)) { | 1217 | if (unlikely(skb->ip_summed != CHECKSUM_HW)) { |
1223 | static int warned; | ||
1224 | |||
1225 | WARN_ON(!warned); | ||
1226 | warned = 1; | ||
1227 | |||
1228 | if (skb_header_cloned(skb) && | 1218 | if (skb_header_cloned(skb) && |
1229 | (err = pskb_expand_head(skb, 0, 0, GFP_ATOMIC))) | 1219 | (err = pskb_expand_head(skb, 0, 0, GFP_ATOMIC))) |
1230 | return ERR_PTR(err); | 1220 | return ERR_PTR(err); |