Lines Matching full:nodes

43 …tic void found_btree_nodes_to_text(struct printbuf *out, struct bch_fs *c, found_btree_nodes nodes)  in found_btree_nodes_to_text()  argument
46 darray_for_each(nodes, i) { in found_btree_nodes_to_text()
122 * Given two found btree nodes, if their sequence numbers are equal, take the
228 if (darray_push(&f->nodes, n)) in try_read_btree_node()
379 if (f->nodes.nr) in bch2_scan_for_btree_nodes()
388 if (!f->nodes.nr) { in bch2_scan_for_btree_nodes()
389 bch_err(c, "%s: no btree nodes found", __func__); in bch2_scan_for_btree_nodes()
396 prt_printf(&buf, "%s: nodes found:\n", __func__); in bch2_scan_for_btree_nodes()
397 found_btree_nodes_to_text(&buf, c, f->nodes); in bch2_scan_for_btree_nodes()
401 …sort_nonatomic(f->nodes.data, f->nodes.nr, sizeof(f->nodes.data[0]), found_btree_node_cmp_cookie, … in bch2_scan_for_btree_nodes()
404 darray_for_each(f->nodes, i) { in bch2_scan_for_btree_nodes()
405 struct found_btree_node *prev = dst ? f->nodes.data + dst - 1 : NULL; in bch2_scan_for_btree_nodes()
416 f->nodes.data[dst++] = *i; in bch2_scan_for_btree_nodes()
419 f->nodes.nr = dst; in bch2_scan_for_btree_nodes()
421 …sort_nonatomic(f->nodes.data, f->nodes.nr, sizeof(f->nodes.data[0]), found_btree_node_cmp_pos, NUL… in bch2_scan_for_btree_nodes()
425 prt_printf(&buf, "%s: nodes after merging replicas:\n", __func__); in bch2_scan_for_btree_nodes()
426 found_btree_nodes_to_text(&buf, c, f->nodes); in bch2_scan_for_btree_nodes()
430 swap(nodes_heap, f->nodes); in bch2_scan_for_btree_nodes()
444 ret = darray_push(&f->nodes, *min_heap_peek(&nodes_heap)); in bch2_scan_for_btree_nodes()
452 ret = handle_overwrites(c, &darray_last(f->nodes), &nodes_heap); in bch2_scan_for_btree_nodes()
459 ret = darray_push(&f->nodes, *min_heap_peek(&nodes_heap)); in bch2_scan_for_btree_nodes()
466 for (struct found_btree_node *n = f->nodes.data; n < &darray_last(f->nodes); n++) in bch2_scan_for_btree_nodes()
471 prt_printf(&buf, "%s: nodes found after overwrites:\n", __func__); in bch2_scan_for_btree_nodes()
472 found_btree_nodes_to_text(&buf, c, f->nodes); in bch2_scan_for_btree_nodes()
475 bch_info(c, "btree node scan found %zu nodes after overwrites", f->nodes.nr); in bch2_scan_for_btree_nodes()
478 …eytzinger0_sort(f->nodes.data, f->nodes.nr, sizeof(f->nodes.data[0]), found_btree_node_cmp_pos, NU… in bch2_scan_for_btree_nodes()
496 for (size_t _idx = eytzinger0_find_gt((_f)->nodes.data, (_f)->nodes.nr, \
497 sizeof((_f)->nodes.data[0]), \
499 _idx < (_f)->nodes.nr && \
500 (_f)->nodes.data[_idx].btree_id == _search.btree_id && \
501 (_f)->nodes.data[_idx].level == _search.level && \
502 bpos_lt((_f)->nodes.data[_idx].min_key, _search.max_key); \
503 _idx = eytzinger0_next(_idx, (_f)->nodes.nr))
517 if (f->nodes.data[idx].seq > BTREE_NODE_SEQ(b->data)) in bch2_btree_node_is_stale()
570 struct found_btree_node n = f->nodes.data[idx]; in bch2_get_scanned_nodes()
606 darray_exit(&f->nodes); in bch2_find_btree_nodes_exit()