Lines Matching refs:l
328 struct key_vector *l = kv->kv; in leaf_new() local
334 l->key = key; in leaf_new()
335 l->pos = 0; in leaf_new()
336 l->bits = 0; in leaf_new()
337 l->slen = fa->fa_slen; in leaf_new()
340 INIT_HLIST_HEAD(&l->leaf); in leaf_new()
341 hlist_add_head(&fa->fa_list, &l->leaf); in leaf_new()
343 return l; in leaf_new()
891 static void leaf_pull_suffix(struct key_vector *tp, struct key_vector *l) in leaf_pull_suffix() argument
893 while ((tp->slen > tp->pos) && (tp->slen > l->slen)) { in leaf_pull_suffix()
894 if (update_suffix(tp) > l->slen) in leaf_pull_suffix()
900 static void leaf_push_suffix(struct key_vector *tn, struct key_vector *l) in leaf_push_suffix() argument
905 while (tn->slen < l->slen) { in leaf_push_suffix()
906 tn->slen = l->slen; in leaf_push_suffix()
992 struct key_vector *n, *l; in fib_insert_node() local
994 l = leaf_new(key, new); in fib_insert_node()
995 if (!l) in fib_insert_node()
1027 NODE_INIT_PARENT(l, tp); in fib_insert_node()
1028 put_child_root(tp, key, l); in fib_insert_node()
1033 node_free(l); in fib_insert_node()
1039 struct key_vector *l, struct fib_alias *new, in fib_insert_alias() argument
1042 if (!l) in fib_insert_alias()
1050 hlist_for_each_entry(last, &l->leaf, fa_list) { in fib_insert_alias()
1062 hlist_add_head_rcu(&new->fa_list, &l->leaf); in fib_insert_alias()
1066 if (l->slen < new->fa_slen) { in fib_insert_alias()
1067 l->slen = new->fa_slen; in fib_insert_alias()
1068 leaf_push_suffix(tp, l); in fib_insert_alias()
1079 struct key_vector *l, *tp; in fib_table_insert() local
1103 l = fib_find_node(t, &tp, key); in fib_table_insert()
1104 fa = l ? fib_find_alias(&l->leaf, slen, tos, fi->fib_priority, in fib_table_insert()
1229 err = fib_insert_alias(t, tp, l, new_fa, fa, key); in fib_table_insert()
1439 struct key_vector *l, struct fib_alias *old) in fib_remove_alias() argument
1451 if (hlist_empty(&l->leaf)) { in fib_remove_alias()
1452 put_child_root(tp, l->key, NULL); in fib_remove_alias()
1453 node_free(l); in fib_remove_alias()
1463 l->slen = fa->fa_slen; in fib_remove_alias()
1464 leaf_pull_suffix(tp, l); in fib_remove_alias()
1472 struct key_vector *l, *tp; in fib_table_delete() local
1486 l = fib_find_node(t, &tp, key); in fib_table_delete()
1487 if (!l) in fib_table_delete()
1490 fa = fib_find_alias(&l->leaf, slen, tos, 0, tb->tb_id); in fib_table_delete()
1530 fib_remove_alias(t, tp, l, fa_to_delete); in fib_table_delete()
1659 struct key_vector *l, *tp = ot->kv; in fib_trie_unmerge() local
1674 while ((l = leaf_walk_rcu(&tp, key)) != NULL) { in fib_trie_unmerge()
1677 hlist_for_each_entry_rcu(fa, &l->leaf, fa_list) { in fib_trie_unmerge()
1692 local_l = fib_find_node(lt, &local_tp, l->key); in fib_trie_unmerge()
1695 NULL, l->key)) in fib_trie_unmerge()
1700 key = l->key + 1; in fib_trie_unmerge()
1701 if (key < l->key) in fib_trie_unmerge()
1877 static int fn_trie_dump_leaf(struct key_vector *l, struct fib_table *tb, in fn_trie_dump_leaf() argument
1880 __be32 xkey = htonl(l->key); in fn_trie_dump_leaf()
1888 hlist_for_each_entry_rcu(fa, &l->leaf, fa_list) { in fn_trie_dump_leaf()
1923 struct key_vector *l, *tp = t->kv; in fib_table_dump() local
1930 while ((l = leaf_walk_rcu(&tp, key)) != NULL) { in fib_table_dump()
1931 if (fn_trie_dump_leaf(l, tb, skb, cb) < 0) { in fib_table_dump()
1938 key = l->key + 1; in fib_table_dump()
1944 if (key < l->key) in fib_table_dump()
2437 struct key_vector *l, **tp = &iter->tnode; in fib_route_get_idx() local
2452 while ((l = leaf_walk_rcu(tp, key)) != NULL) { in fib_route_get_idx()
2453 key = l->key + 1; in fib_route_get_idx()
2459 l = NULL; in fib_route_get_idx()
2466 if (l) in fib_route_get_idx()
2471 return l; in fib_route_get_idx()
2503 struct key_vector *l = NULL; in fib_route_seq_next() local
2510 l = leaf_walk_rcu(&iter->tnode, key); in fib_route_seq_next()
2512 if (l) { in fib_route_seq_next()
2513 iter->key = l->key + 1; in fib_route_seq_next()
2519 return l; in fib_route_seq_next()
2553 struct key_vector *l = v; in fib_route_seq_show() local
2563 prefix = htonl(l->key); in fib_route_seq_show()
2565 hlist_for_each_entry_rcu(fa, &l->leaf, fa_list) { in fib_route_seq_show()