projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
2d47b45
)
net: rps: skip fragment when computing rxhash
author
Changli Gao
<
[email protected]
>
Tue, 17 Aug 2010 19:01:38 +0000
(19:01 +0000)
committer
David S. Miller
<
[email protected]
>
Fri, 20 Aug 2010 00:10:38 +0000
(17:10 -0700)
Fragmented IP packets may have no transfer header, so when computing
rxhash, we should skip them.
Signed-off-by: Changli Gao <
[email protected]
>
Acked-by: Eric Dumazet <
[email protected]
>
Signed-off-by: David S. Miller <
[email protected]
>
net/core/dev.c
patch
|
blob
|
history
diff --git
a/net/core/dev.c
b/net/core/dev.c
index cf87fde3a29bc62ae6cb6a5d6b7424b646f183fd..7e97e891636e868409d9a375c12825ca17d42b7e 100644
(file)
--- a/
net/core/dev.c
+++ b/
net/core/dev.c
@@
-2284,7
+2284,10
@@
__u32 __skb_get_rxhash(struct sk_buff *skb)
goto done;
ip = (struct iphdr *) skb->data + nhoff;
- ip_proto = ip->protocol;
+ if (ip->frag_off & htons(IP_MF | IP_OFFSET))
+ ip_proto = 0;
+ else
+ ip_proto = ip->protocol;
addr1 = (__force u32) ip->saddr;
addr2 = (__force u32) ip->daddr;
ihl = ip->ihl;