Searched refs:trie (Results 1 - 5 of 5) sorted by relevance
/linux-master/kernel/bpf/ |
H A D | lpm_trie.c | 41 /* This trie implements a longest prefix match algorithm that can be used to 53 * For instance, let's start with a trie that was created with a prefix length 59 * As the trie is empty initially, the new node (1) will be places as root 141 * example above, (4) would be re-used if 192.168.0.0/23 is added to the trie. 143 * A fully populated trie would have a height of 32 nodes, as the trie was 147 * is a child that can be used to become more specific, the trie is traversed 159 * @trie: The trie to get internal sizes from 165 static size_t longest_prefix_match(const struct lpm_trie *trie, argument 230 struct lpm_trie *trie = container_of(map, struct lpm_trie, map); local 282 lpm_trie_node_alloc(const struct lpm_trie *trie, const void *value) argument 309 struct lpm_trie *trie = container_of(map, struct lpm_trie, map); local 439 struct lpm_trie *trie = container_of(map, struct lpm_trie, map); local 548 struct lpm_trie *trie; local 578 struct lpm_trie *trie = container_of(map, struct lpm_trie, map); local 618 struct lpm_trie *trie = container_of(map, struct lpm_trie, map); local 725 struct lpm_trie *trie = container_of(map, struct lpm_trie, map); local [all...] |
/linux-master/fs/unicode/ |
H A D | utf8-norm.c | 150 * The leaves of the trie are embedded in the trie, and so the same 174 * The decompositions in the trie have been fully expanded, with the 179 * The trie is constructed in such a way that leaves exist for all 182 * lookup in the trie can be used to validate the UTF-8 input. 295 * Use trie to scan s, touching at most len bytes. 306 utf8trie_t *trie = um->tables->utf8data + um->ntab[n]->offset; local 317 offlen = (*trie & OFFLEN) >> OFFLEN_SHIFT; 318 if (*trie & NEXTBYTE) { 323 mask = 1 << (*trie [all...] |
H A D | mkutf8data.c | 19 /* Generator for a compact trie for unicode normalization */ 72 * To save space in the generated trie, the unicode version is not 145 * The leaves of the trie are embedded in the trie, and so the same 169 * The decompositions in the trie have been fully expanded. 939 * emitted trie. These values must be pre-computed because relative 1183 * Emit a trie for the given tree into the data array. 1840 printf("This program creates an a data trie used for parsing and\n"); 1841 printf("normalization of UTF-8 strings. The trie is derived from\n"); 2474 * trie 2709 utf8trie_t *trie; local [all...] |
/linux-master/drivers/net/wireguard/ |
H A D | allowedips.c | 111 static struct allowedips_node *find_node(struct allowedips_node *trie, u8 bits, argument 114 struct allowedips_node *node = trie, *found = NULL; 149 static bool node_placement(struct allowedips_node __rcu *trie, const u8 *key, argument 153 struct allowedips_node *node = rcu_dereference_protected(trie, lockdep_is_held(lock)); 181 static int add(struct allowedips_node __rcu **trie, u8 bits, const u8 *key, argument 189 if (!rcu_access_pointer(*trie)) { 196 connect_node(trie, 2, node); 199 if (node_placement(*trie, key, cidr, bits, &node, lock)) { 213 down = rcu_dereference_protected(*trie, lockdep_is_held(lock)); 228 connect_node(trie, [all...] |
/linux-master/net/ipv4/ |
H A D | fib_trie.c | 12 * This work is based on the LPC-trie which is originally described in: 167 struct trie { struct 174 static struct key_vector *resize(struct trie *t, struct key_vector *tn); 232 * necessary. Every node in the trie has a key associated with it, but not 508 static struct key_vector *replace(struct trie *t, 537 static struct key_vector *inflate(struct trie *t, 633 static struct key_vector *halve(struct trie *t, 688 static struct key_vector *collapse(struct trie *t, 747 /* From "Implementing a dynamic compressed trie" by Stefan Nilsson of 843 /* One child or none, time to drop us from the trie */ [all...] |
Completed in 232 milliseconds