Lines Matching defs:upper

188 	while (!list_empty(&node->upper)) {
189 edge = list_entry(node->upper.next,
212 if (list_is_last(&edge->list[LOWER], &lower->upper)) {
396 ASSERT(list_empty(&cur->upper));
420 if (list_empty(&lower->upper))
428 * Backref nodes for upper level tree blocks are left in the
448 * upper level blocks that reference the block, and then check backrefs of
449 * these upper level blocks recursively. The recursion stops when tree root is
453 * all upper level blocks that directly/indirectly reference the block are also
508 /* Finish the upper linkage of newly added edges/nodes */
604 &new_edge->node[LOWER]->upper);
1711 * In merge_reloc_root(), we modify the upper level pointer to swap the
2159 if (list_empty(&next->upper))
2162 edge = list_entry(next->upper.next,
2214 * relocate a block tree, and then update pointers in upper level
2227 struct btrfs_backref_node *upper;
2243 list_for_each_entry(edge, &node->upper, list[LOWER]) {
2249 upper = edge->node[UPPER];
2250 root = select_reloc_root(trans, rc, upper, edges);
2253 if (upper->eb && !upper->locked) {
2255 ret = btrfs_bin_search(upper->eb, key, &slot);
2261 bytenr = btrfs_node_blockptr(upper->eb, slot);
2265 btrfs_backref_drop_node_buffer(upper);
2268 if (!upper->eb) {
2280 if (!upper->eb) {
2281 upper->eb = path->nodes[upper->level];
2282 path->nodes[upper->level] = NULL;
2284 BUG_ON(upper->eb != path->nodes[upper->level]);
2287 upper->locked = 1;
2288 path->locks[upper->level] = 0;
2290 slot = path->slots[upper->level];
2293 ret = btrfs_bin_search(upper->eb, key, &slot);
2301 bytenr = btrfs_node_blockptr(upper->eb, slot);
2305 "lowest leaf/node mismatch: bytenr %llu node->bytenr %llu slot %d upper %llu",
2307 upper->eb->start);
2317 generation = btrfs_node_ptr_generation(upper->eb, slot);
2318 btrfs_node_key_to_cpu(upper->eb, &first_key, slot);
2320 upper->level - 1, &first_key);
2333 ret = btrfs_cow_block(trans, root, eb, upper->eb,
2343 btrfs_set_node_blockptr(upper->eb, slot,
2345 btrfs_set_node_ptr_generation(upper->eb, slot,
2347 btrfs_mark_buffer_dirty(upper->eb);
2351 upper->eb->start);
2354 btrfs_header_owner(upper->eb));
2358 ret = btrfs_drop_subtree(trans, root, eb, upper->eb);
2362 if (!upper->pending)
2363 btrfs_backref_drop_node_buffer(upper);
2365 btrfs_backref_unlock_node_buffer(upper);
2440 if (list_empty(&next->upper))
2443 edge = list_entry(next->upper.next,