Lines Matching refs:root
471 w->root = &tb->tb6_root;
580 w->root = &table->tb6_root;
592 cb->args[5] = READ_ONCE(w->root->fn_sernum);
595 int sernum = READ_ONCE(w->root->fn_sernum);
597 /* Begin at the root if the tree changed */
600 w->node = w->root;
742 struct fib6_node *root,
758 fn = root;
791 /* remove null_entry in the root node */
1374 int fib6_add(struct fib6_node *root, struct fib6_info *rt,
1392 fn = fib6_add_1(info->nl_net, table, root,
1416 * sfn[subtree root]
1421 /* Create subtree root node */
1440 root, and then (in failure) stale node
1465 /* put back null_entry for root node */
1523 * 2. fn is the root node in the table and we fail to add the first
1544 static struct fib6_node *fib6_node_lookup_1(struct fib6_node *root,
1557 fn = root;
1613 struct fib6_node *fib6_node_lookup(struct fib6_node *root,
1634 fn = fib6_node_lookup_1(root, daddr ? args : args + 1);
1636 fn = root;
1653 static struct fib6_node *fib6_locate_1(struct fib6_node *root,
1660 for (fn = root; fn ; ) {
1703 struct fib6_node *fib6_locate(struct fib6_node *root,
1710 fn = fib6_locate_1(root, daddr, dst_len,
1783 /* Set fn->leaf to null_entry for root node. */
1826 /* Subtree root (i.e. fn) may have one child */
1968 * 1. For root node, put back null_entry as how the table was created.
2062 /* w->root should always be table->tb6_root */
2063 WARN_ON_ONCE(!(w->root->fn_flags & RTN_TL_ROOT));
2119 if (fn == w->root)
2153 w->node = w->root;
2219 static void fib6_clean_tree(struct net *net, struct fib6_node *root,
2225 c.w.root = root;
2538 iter->w.root = &iter->tbl->tb6_root;
2540 iter->w.node = iter->w.root;
2542 iter->sernum = READ_ONCE(iter->w.root->fn_sernum);
2570 int sernum = READ_ONCE(iter->w.root->fn_sernum);
2575 iter->w.node = iter->w.root;
2640 return w->node && !(w->state == FWS_U && w->node == w->root);