flow_hash
u32 flow_hash, dest, rss_en_mask;
flow_hash = fbn->rss_flow_hash[flow_type];
!(RXH_DISCARD & flow_hash) ?
u32 flow_hash = fbn->rss_flow_hash[flow_type];
rss_en_mask |= FBNIC_FH_2_RSSEM_BIT(L2DA, L2_DA, flow_hash);
rss_en_mask |= FBNIC_FH_2_RSSEM_BIT(IP_SRC, IP_SRC, flow_hash);
rss_en_mask |= FBNIC_FH_2_RSSEM_BIT(IP_DST, IP_DST, flow_hash);
rss_en_mask |= FBNIC_FH_2_RSSEM_BIT(L4_B_0_1, L4_SRC, flow_hash);
rss_en_mask |= FBNIC_FH_2_RSSEM_BIT(L4_B_2_3, L4_DST, flow_hash);
rss_en_mask |= FBNIC_FH_2_RSSEM_BIT(IP6_FL, OV6_FL_LBL, flow_hash);
rss_en_mask |= FBNIC_FH_2_RSSEM_BIT(IP6_FL, IV6_FL_LBL, flow_hash);
data->flow_hash[i] = -1; /* Unsupported */
data->flow_hash[i] = fields.data;
int flow_hash[__ETHTOOL_A_FLOW_CNT];
if (data->flow_hash[i] >= 0 &&
nla_put_uint(skb, i, data->flow_hash[i])) {
if (data->flow_hash[i] >= 0 &&
!ethtool_rxfh_config_is_sym(data->flow_hash[i])) {
if (data->has_flow_hash && data->flow_hash[i] == fields.data)
flow->flow_table.hash = flow_hash(&flow->key, &flow->mask->range);
hash = flow_hash(&masked_key, &mask->range);
u32 flow_hash = 0, srchost_hash = 0, dsthost_hash = 0;
flow_hash = flow_hash_from_keys(&keys);
flow_hash = flow_override - 1;
flow_hash = skb->hash;
flow_hash ^= srchost_hash;
flow_hash ^= dsthost_hash;
reduced_hash = flow_hash % CAKE_QUEUES;
if (likely(q->tags[reduced_hash] == flow_hash &&
if (q->tags[outer_hash + k] == flow_hash) {
q->tags[reduced_hash] = flow_hash;