Lines Matching refs:flkeys
2293 struct flow_keys *flkeys) in ip6_multipath_l3_keys() argument
2297 struct flow_keys *_flkeys = flkeys; in ip6_multipath_l3_keys()
2457 const struct sk_buff *skb, struct flow_keys *flkeys) in rt6_multipath_hash() argument
2467 ip6_multipath_l3_keys(skb, &hash_keys, flkeys); in rt6_multipath_hash()
2487 if (!flkeys) { in rt6_multipath_hash()
2489 flkeys = &keys; in rt6_multipath_hash()
2492 hash_keys.addrs.v6addrs.src = flkeys->addrs.v6addrs.src; in rt6_multipath_hash()
2493 hash_keys.addrs.v6addrs.dst = flkeys->addrs.v6addrs.dst; in rt6_multipath_hash()
2494 hash_keys.ports.src = flkeys->ports.src; in rt6_multipath_hash()
2495 hash_keys.ports.dst = flkeys->ports.dst; in rt6_multipath_hash()
2496 hash_keys.basic.ip_proto = flkeys->basic.ip_proto; in rt6_multipath_hash()
2514 if (!flkeys) { in rt6_multipath_hash()
2516 flkeys = &keys; in rt6_multipath_hash()
2520 if (flkeys->control.addr_type == FLOW_DISSECTOR_KEY_IPV4_ADDRS) { in rt6_multipath_hash()
2522 hash_keys.addrs.v4addrs.src = flkeys->addrs.v4addrs.src; in rt6_multipath_hash()
2523 hash_keys.addrs.v4addrs.dst = flkeys->addrs.v4addrs.dst; in rt6_multipath_hash()
2524 } else if (flkeys->control.addr_type == FLOW_DISSECTOR_KEY_IPV6_ADDRS) { in rt6_multipath_hash()
2526 hash_keys.addrs.v6addrs.src = flkeys->addrs.v6addrs.src; in rt6_multipath_hash()
2527 hash_keys.addrs.v6addrs.dst = flkeys->addrs.v6addrs.dst; in rt6_multipath_hash()
2528 hash_keys.tags.flow_label = flkeys->tags.flow_label; in rt6_multipath_hash()
2529 hash_keys.basic.ip_proto = flkeys->basic.ip_proto; in rt6_multipath_hash()
2533 ip6_multipath_l3_keys(skb, &hash_keys, flkeys); in rt6_multipath_hash()
2571 struct flow_keys *flkeys = NULL, _flkeys; in ip6_route_input() local
2578 flkeys = &_flkeys; in ip6_route_input()
2581 fl6.mp_hash = rt6_multipath_hash(net, &fl6, skb, flkeys); in ip6_route_input()