MCPcopy Create free account
hub / github.com/F-Stack/f-stack / ipv4_hash_crc

Function ipv4_hash_crc

dpdk/examples/l3fwd/l3fwd_em.c:138–163  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

136struct rte_hash *ipv6_l3fwd_em_lookup_struct[NB_SOCKETS];
137
138static inline uint32_t
139ipv4_hash_crc(const void *data, __rte_unused uint32_t data_len,
140 uint32_t init_val)
141{
142 const union ipv4_5tuple_host *k;
143 uint32_t t;
144 const uint32_t *p;
145
146 k = data;
147 t = k->proto;
148 p = (const uint32_t *)&k->port_src;
149
150#ifdef EM_HASH_CRC
151 init_val = rte_hash_crc_4byte(t, init_val);
152 init_val = rte_hash_crc_4byte(k->ip_src, init_val);
153 init_val = rte_hash_crc_4byte(k->ip_dst, init_val);
154 init_val = rte_hash_crc_4byte(*p, init_val);
155#else
156 init_val = rte_jhash_1word(t, init_val);
157 init_val = rte_jhash_1word(k->ip_src, init_val);
158 init_val = rte_jhash_1word(k->ip_dst, init_val);
159 init_val = rte_jhash_1word(*p, init_val);
160#endif
161
162 return init_val;
163}
164
165static inline uint32_t
166ipv6_hash_crc(const void *data, __rte_unused uint32_t data_len,

Callers

nothing calls this directly

Calls 2

rte_hash_crc_4byteFunction · 0.50
rte_jhash_1wordFunction · 0.50

Tested by

no test coverage detected