Lines Matching refs:data
29 u8 data[]; member
152 static inline int extract_bit(const u8 *data, size_t index) in extract_bit() argument
154 return !!(data[index / 8] & (1 << (7 - (index % 8)))); in extract_bit()
172 BUILD_BUG_ON(offsetof(struct lpm_trie_node, data) % sizeof(u32)); in longest_prefix_match()
173 BUILD_BUG_ON(offsetof(struct bpf_lpm_trie_key, data) % sizeof(u32)); in longest_prefix_match()
181 u64 diff = be64_to_cpu(*(__be64 *)node->data ^ in longest_prefix_match()
182 *(__be64 *)key->data); in longest_prefix_match()
194 u32 diff = be32_to_cpu(*(__be32 *)&node->data[i] ^ in longest_prefix_match()
195 *(__be32 *)&key->data[i]); in longest_prefix_match()
206 u16 diff = be16_to_cpu(*(__be16 *)&node->data[i] ^ in longest_prefix_match()
207 *(__be16 *)&key->data[i]); in longest_prefix_match()
218 prefixlen += 8 - fls(node->data[i] ^ key->data[i]); in longest_prefix_match()
271 next_bit = extract_bit(key->data, node->prefixlen); in trie_lookup_elem()
279 return found->data + trie->data_size; in trie_lookup_elem()
299 memcpy(node->data + trie->data_size, value, in lpm_trie_node_alloc()
344 memcpy(new_node->data, key->data, trie->data_size); in trie_update_elem()
362 next_bit = extract_bit(key->data, node->prefixlen); in trie_update_elem()
394 next_bit = extract_bit(node->data, matchlen); in trie_update_elem()
408 memcpy(im_node->data, node->data, trie->data_size); in trie_update_elem()
411 if (extract_bit(key->data, matchlen)) { in trie_update_elem()
472 next_bit = extract_bit(key->data, node->prefixlen); in trie_delete_elem()
571 offsetof(struct bpf_lpm_trie_key, data); in trie_alloc()
662 next_bit = extract_bit(key->data, node->prefixlen); in trie_get_next_key()
709 memcpy((void *)next_key + offsetof(struct bpf_lpm_trie_key, data), in trie_get_next_key()
710 next_node->data, trie->data_size); in trie_get_next_key()