On Thu, May 28, 2015 at 2:44 PM, Eric Dumazet wrote:
> On Thu, 2015-05-28 at 11:19 -0700, Tom Herbert wrote:
>
>> @@ -566,11 +640,15 @@ static const struct flow_dissector_key
>> flow_keys_dissector_keys[] = {
>> },
>> {
>> .key_id = FLOW_DISSECTOR_KEY_IPV4_ADDRS,
>> -
On Thu, 2015-05-28 at 11:19 -0700, Tom Herbert wrote:
> @@ -566,11 +640,15 @@ static const struct flow_dissector_key
> flow_keys_dissector_keys[] = {
> },
> {
> .key_id = FLOW_DISSECTOR_KEY_IPV4_ADDRS,
> - .offset = offsetof(struct flow_keys, addrs),
> +
This patch adds full IPv6 addresses into flow_keys and uses them as
input to the flow hash function. The implementation supports either
IPv4 or IPv6 addresses in a union, and selector is used to determine
how may words to input to jhash2.
We also add flow_get_u32_dst and flow_get_u32_src functions
On Fri, May 22, 2015 at 12:57 AM, Jiri Pirko wrote:
> Fri, May 22, 2015 at 02:11:40AM CEST, t...@herbertland.com wrote:
>>This patch adds full IPv6 addresses into flow_keys and uses them as
>>input to the flow hash function. The implementation supports either
>>IPv4 or IPv6 addresses in a union, a
Fri, May 22, 2015 at 02:11:40AM CEST, t...@herbertland.com wrote:
>This patch adds full IPv6 addresses into flow_keys and uses them as
>input to the flow hash function. The implementation supports either
>IPv4 or IPv6 addresses in a union, and selector is used to determine
>how may words to input t
On Thu, May 21, 2015 at 5:11 PM, Tom Herbert wrote:
> static inline void ip6_set_txhash(struct sock *sk)
> {
> @@ -700,8 +714,11 @@ static inline void ip6_set_txhash(struct sock *sk)
>
> memset(&keys, 0, sizeof(keys));
>
> - keys.addrs.src = (__force __be32)ipv6_addr_hash(&np->sadd
This patch adds full IPv6 addresses into flow_keys and uses them as
input to the flow hash function. The implementation supports either
IPv4 or IPv6 addresses in a union, and selector is used to determine
how may words to input to jhash2.
We also add flow_get_u32_dst and flow_get_u32_src functions