net: Add IPv6 flow label to flow_keys

In flow_dissector set the flow label in flow_keys for IPv6. This also
removes the shortcircuiting of flow dissection when a non-zero label
is present, the flow label can be considered to provide additional
entropy for a hash.

Signed-off-by: Tom Herbert <tom@herbertland.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Tom Herbert
2015-06-04 09:16:44 -07:00
committed by David S. Miller
parent d34af823ff
commit 87ee9e52ff
2 changed files with 13 additions and 20 deletions

View File

@@ -28,7 +28,8 @@ struct flow_dissector_key_basic {
};
struct flow_dissector_key_tags {
u32 vlan_id:12;
u32 vlan_id:12,
flow_label:20;
};
/**
@@ -111,6 +112,7 @@ enum flow_dissector_key_id {
FLOW_DISSECTOR_KEY_ETH_ADDRS, /* struct flow_dissector_key_eth_addrs */
FLOW_DISSECTOR_KEY_TIPC_ADDRS, /* struct flow_dissector_key_tipc_addrs */
FLOW_DISSECTOR_KEY_VLANID, /* struct flow_dissector_key_flow_tags */
FLOW_DISSECTOR_KEY_FLOW_LABEL, /* struct flow_dissector_key_flow_tags */
FLOW_DISSECTOR_KEY_MAX,
};