Lines Matching refs:rb_node
39 struct rb_node rb_node; member
47 struct rb_node rb_node; member
127 struct rb_node rb_node; member
141 struct rb_node rb_node; member
255 RB_CLEAR_NODE(&node->rb_node); in alloc_backref_node()
289 static struct rb_node *tree_insert(struct rb_root *root, u64 bytenr, in tree_insert()
290 struct rb_node *node) in tree_insert()
292 struct rb_node **p = &root->rb_node; in tree_insert()
293 struct rb_node *parent = NULL; in tree_insert()
298 entry = rb_entry(parent, struct tree_entry, rb_node); in tree_insert()
313 static struct rb_node *tree_search(struct rb_root *root, u64 bytenr) in tree_search()
315 struct rb_node *n = root->rb_node; in tree_search()
319 entry = rb_entry(n, struct tree_entry, rb_node); in tree_search()
331 static void backref_tree_panic(struct rb_node *rb_node, int errno, u64 bytenr) in backref_tree_panic() argument
335 struct backref_node *bnode = rb_entry(rb_node, struct backref_node, in backref_tree_panic()
336 rb_node); in backref_tree_panic()
416 if (!RB_EMPTY_NODE(&node->rb_node)) in drop_backref_node()
417 rb_erase(&node->rb_node, &tree->rb_root); in drop_backref_node()
442 if (RB_EMPTY_NODE(&upper->rb_node)) { in remove_backref_node()
465 struct rb_node *rb_node; in update_backref_node() local
466 rb_erase(&node->rb_node, &cache->rb_root); in update_backref_node()
468 rb_node = tree_insert(&cache->rb_root, node->bytenr, &node->rb_node); in update_backref_node()
469 if (rb_node) in update_backref_node()
470 backref_tree_panic(rb_node, -EEXIST, bytenr); in update_backref_node()
555 struct rb_node *rb_node; in find_reloc_root() local
560 rb_node = tree_search(&rc->reloc_root_tree.rb_root, bytenr); in find_reloc_root()
561 if (rb_node) { in find_reloc_root()
562 node = rb_entry(rb_node, struct mapping_node, rb_node); in find_reloc_root()
694 struct rb_node *rb_node; local
854 rb_node = tree_search(&cache->rb_root, key.offset);
855 if (!rb_node) {
870 upper = rb_entry(rb_node, struct backref_node,
871 rb_node);
947 rb_node = tree_search(&cache->rb_root, eb->start);
948 if (!rb_node) {
987 upper = rb_entry(rb_node, struct backref_node,
988 rb_node);
998 if (rb_node)
1036 rb_node = tree_insert(&cache->rb_root, node->bytenr,
1037 &node->rb_node);
1038 if (rb_node)
1039 backref_tree_panic(rb_node, -EEXIST, node->bytenr);
1059 if (!RB_EMPTY_NODE(&upper->rb_node)) {
1085 rb_node = tree_insert(&cache->rb_root, upper->bytenr,
1086 &upper->rb_node);
1087 if (rb_node)
1088 backref_tree_panic(rb_node, -EEXIST,
1129 rb_erase(&upper->rb_node, &cache->rb_root);
1156 RB_EMPTY_NODE(&lower->rb_node))
1159 if (!RB_EMPTY_NODE(&upper->rb_node))
1197 struct rb_node *rb_node; local
1202 rb_node = tree_search(&cache->rb_root, src->commit_root->start);
1203 if (rb_node) {
1204 node = rb_entry(rb_node, struct backref_node, rb_node);
1212 rb_node = tree_search(&cache->rb_root,
1214 if (rb_node) {
1215 node = rb_entry(rb_node, struct backref_node,
1216 rb_node);
1249 rb_node = tree_insert(&cache->rb_root, new_node->bytenr,
1250 &new_node->rb_node);
1251 if (rb_node)
1252 backref_tree_panic(rb_node, -EEXIST, new_node->bytenr);
1277 struct rb_node *rb_node; local
1289 rb_node = tree_insert(&rc->reloc_root_tree.rb_root,
1290 node->bytenr, &node->rb_node);
1292 if (rb_node) {
1310 struct rb_node *rb_node; local
1315 rb_node = tree_search(&rc->reloc_root_tree.rb_root,
1317 if (rb_node) {
1318 node = rb_entry(rb_node, struct mapping_node, rb_node);
1319 rb_erase(&node->rb_node, &rc->reloc_root_tree.rb_root);
1339 struct rb_node *rb_node; local
1344 rb_node = tree_search(&rc->reloc_root_tree.rb_root,
1346 if (rb_node) {
1347 node = rb_entry(rb_node, struct mapping_node, rb_node);
1348 rb_erase(&node->rb_node, &rc->reloc_root_tree.rb_root);
1358 rb_node = tree_insert(&rc->reloc_root_tree.rb_root,
1359 node->bytenr, &node->rb_node);
1361 if (rb_node)
1362 backref_tree_panic(rb_node, -EEXIST, node->bytenr);
1517 struct rb_node *node;
1518 struct rb_node *prev;
1524 node = root->inode_tree.rb_node;
1528 entry = rb_entry(node, struct btrfs_inode, rb_node);
1539 entry = rb_entry(prev, struct btrfs_inode, rb_node);
1548 entry = rb_entry(node, struct btrfs_inode, rb_node);
2435 struct rb_node *rb_node; local
2436 while ((rb_node = rb_first(blocks))) {
2437 block = rb_entry(rb_node, struct tree_block, rb_node);
2438 rb_erase(rb_node, blocks);
2955 struct rb_node *rb_node; local
2965 rb_node = rb_first(blocks);
2966 while (rb_node) {
2967 block = rb_entry(rb_node, struct tree_block, rb_node);
2970 rb_node = rb_next(rb_node);
2973 rb_node = rb_first(blocks);
2974 while (rb_node) {
2975 block = rb_entry(rb_node, struct tree_block, rb_node);
2981 rb_node = rb_next(rb_node);
2984 rb_node = rb_first(blocks);
2985 while (rb_node) {
2986 block = rb_entry(rb_node, struct tree_block, rb_node);
2998 if (ret != -EAGAIN || rb_node == rb_first(blocks))
3002 rb_node = rb_next(rb_node);
3284 struct rb_node *rb_node; local
3336 rb_node = tree_insert(blocks, block->bytenr, &block->rb_node);
3337 if (rb_node)
3338 backref_tree_panic(rb_node, -EEXIST, block->bytenr);
3491 struct rb_node *rb_node; local
3557 rb_node = tree_search(blocks, leaf->start);
3558 if (rb_node) {
3583 rb_node = tree_search(blocks, leaf->start);
3584 if (rb_node) {
3627 rb_node = tree_insert(blocks, block->bytenr,
3628 &block->rb_node);
3629 if (rb_node)
3630 backref_tree_panic(rb_node, -EEXIST,