summaryrefslogtreecommitdiffstats
path: root/include/linux/skbuff.h
diff options
context:
space:
mode:
authorTom Herbert2015-06-04 18:16:39 +0200
committerDavid S. Miller2015-06-05 00:44:30 +0200
commit42aecaa9bb2bd57eb8d61b4565cee5d3640863fb (patch)
tree1f6198f7e7aaccaf60a51a1e69aca366a7fd1374 /include/linux/skbuff.h
parentnet: Remove superfluous setting of key_basic (diff)
downloadkernel-qcow2-linux-42aecaa9bb2bd57eb8d61b4565cee5d3640863fb.tar.gz
kernel-qcow2-linux-42aecaa9bb2bd57eb8d61b4565cee5d3640863fb.tar.xz
kernel-qcow2-linux-42aecaa9bb2bd57eb8d61b4565cee5d3640863fb.zip
net: Get skb hash over flow_keys structure
This patch changes flow hashing to use jhash2 over the flow_keys structure instead just doing jhash_3words over src, dst, and ports. This method will allow us take more input into the hashing function so that we can include full IPv6 addresses, VLAN, flow labels etc. without needing to resort to xor'ing which makes for a poor hash. Acked-by: Jiri Pirko <jiri@resnulli.us> Signed-off-by: Tom Herbert <tom@herbertland.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/skbuff.h')
-rw-r--r--include/linux/skbuff.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 6b41c15efa27..cc612fc0a894 100644
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -1943,7 +1943,7 @@ static inline void skb_probe_transport_header(struct sk_buff *skb,
if (skb_transport_header_was_set(skb))
return;
else if (skb_flow_dissect_flow_keys(skb, &keys))
- skb_set_transport_header(skb, keys.basic.thoff);
+ skb_set_transport_header(skb, keys.control.thoff);
else
skb_set_transport_header(skb, offset_hint);
}