Searched refs:trie (Results 1 - 5 of 5) sorted by relevance

/linux-master/kernel/bpf/
H A Dlpm_trie.c41 /* 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 Dutf8-norm.c150 * 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 Dmkutf8data.c19 /* 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 Dallowedips.c111 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 Dfib_trie.c12 * 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