Lines Matching refs:sb

91 static int befs_btree_seekleaf(struct super_block *sb, const befs_data_stream *ds,
96 static int befs_bt_read_super(struct super_block *sb, const befs_data_stream *ds,
99 static int befs_bt_read_node(struct super_block *sb, const befs_data_stream *ds,
111 static int befs_find_key(struct super_block *sb,
115 static char *befs_bt_get_key(struct super_block *sb,
124 * @sb: Filesystem superblock
134 befs_bt_read_super(struct super_block *sb, const befs_data_stream *ds,
140 befs_debug(sb, "---> %s", __func__);
142 bh = befs_read_datastream(sb, ds, 0, NULL);
145 befs_error(sb, "Couldn't read index header.");
149 befs_dump_index_entry(sb, od_sup);
151 sup->magic = fs32_to_cpu(sb, od_sup->magic);
152 sup->node_size = fs32_to_cpu(sb, od_sup->node_size);
153 sup->max_depth = fs32_to_cpu(sb, od_sup->max_depth);
154 sup->data_type = fs32_to_cpu(sb, od_sup->data_type);
155 sup->root_node_ptr = fs64_to_cpu(sb, od_sup->root_node_ptr);
159 befs_error(sb, "Index header has bad magic.");
163 befs_debug(sb, "<--- %s", __func__);
167 befs_debug(sb, "<--- %s ERROR", __func__);
173 * @sb: Filesystem superblock
191 befs_bt_read_node(struct super_block *sb, const befs_data_stream *ds,
196 befs_debug(sb, "---> %s", __func__);
201 node->bh = befs_read_datastream(sb, ds, node_off, &off);
203 befs_error(sb, "%s failed to read "
205 befs_debug(sb, "<--- %s ERROR", __func__);
212 befs_dump_index_node(sb, node->od_node);
214 node->head.left = fs64_to_cpu(sb, node->od_node->left);
215 node->head.right = fs64_to_cpu(sb, node->od_node->right);
216 node->head.overflow = fs64_to_cpu(sb, node->od_node->overflow);
218 fs16_to_cpu(sb, node->od_node->all_key_count);
220 fs16_to_cpu(sb, node->od_node->all_key_length);
222 befs_debug(sb, "<--- %s", __func__);
228 * @sb: Filesystem superblock
245 befs_btree_find(struct super_block *sb, const befs_data_stream *ds,
253 befs_debug(sb, "---> %s Key: %s", __func__, key);
255 if (befs_bt_read_super(sb, ds, &bt_super) != BEFS_OK) {
256 befs_error(sb,
264 befs_error(sb, "befs_btree_find() failed to allocate %zu "
273 if (befs_bt_read_node(sb, ds, this_node, node_off) != BEFS_OK) {
274 befs_error(sb, "befs_btree_find() failed to read "
280 res = befs_find_key(sb, this_node, key, &node_off);
284 if (befs_bt_read_node(sb, ds, this_node, node_off) != BEFS_OK) {
285 befs_error(sb, "befs_btree_find() failed to read "
292 res = befs_find_key(sb, this_node, key, value);
298 befs_error(sb, "<--- %s Key %s not found", __func__, key);
299 befs_debug(sb, "<--- %s ERROR", __func__);
303 befs_debug(sb, "<--- %s Found key %s, value %llu", __func__,
311 befs_debug(sb, "<--- %s ERROR", __func__);
317 * @sb: Filesystem superblock
330 befs_find_key(struct super_block *sb, struct befs_btree_node *node,
340 befs_debug(sb, "---> %s %s", __func__, findkey);
346 thiskey = befs_bt_get_key(sb, node, last, &keylen);
350 befs_debug(sb, "<--- node can't contain %s", findkey);
361 befs_debug(sb, "first: %d, last: %d, mid: %d", first, last,
363 thiskey = befs_bt_get_key(sb, node, mid, &keylen);
368 befs_debug(sb, "<--- %s found %s at %d",
371 *value = fs64_to_cpu(sb, valarray[mid]);
382 *value = fs64_to_cpu(sb, valarray[mid + 1]);
384 *value = fs64_to_cpu(sb, valarray[mid]);
385 befs_error(sb, "<--- %s %s not found", __func__, findkey);
386 befs_debug(sb, "<--- %s ERROR", __func__);
392 * @sb: Filesystem superblock
411 befs_btree_read(struct super_block *sb, const befs_data_stream *ds,
426 befs_debug(sb, "---> %s", __func__);
428 if (befs_bt_read_super(sb, ds, &bt_super) != BEFS_OK) {
429 befs_error(sb,
436 befs_error(sb, "befs_btree_read() failed to allocate %zu "
445 res = befs_btree_seekleaf(sb, ds, &bt_super, this_node, &node_off);
451 befs_debug(sb, "<--- %s Tree is EMPTY", __func__);
465 befs_debug(sb,
477 if (befs_bt_read_node(sb, ds, this_node, node_off) != BEFS_OK) {
478 befs_error(sb, "%s failed to read node at %llu",
490 keystart = befs_bt_get_key(sb, this_node, cur_key, &keylen);
492 befs_debug(sb, "Read [%llu,%d]: keysize %d",
497 befs_error(sb, "%s keybuf too small (%zu) "
504 *value = fs64_to_cpu(sb, valarray[cur_key]);
507 befs_debug(sb, "Read [%llu,%d]: Key \"%.*s\", Value %llu", node_off,
513 befs_debug(sb, "<--- %s", __func__);
523 befs_debug(sb, "<--- %s ERROR", __func__);
529 * @sb: Filesystem superblock
542 befs_btree_seekleaf(struct super_block *sb, const befs_data_stream *ds,
548 befs_debug(sb, "---> %s", __func__);
550 if (befs_bt_read_node(sb, ds, this_node, *node_off) != BEFS_OK) {
551 befs_error(sb, "%s failed to read "
555 befs_debug(sb, "Seekleaf to root node %llu", *node_off);
558 befs_debug(sb, "<--- %s Tree is EMPTY", __func__);
565 befs_debug(sb, "%s encountered "
572 *node_off = fs64_to_cpu(sb, valarray[0]);
574 if (befs_bt_read_node(sb, ds, this_node, *node_off) != BEFS_OK) {
575 befs_error(sb, "%s failed to read "
580 befs_debug(sb, "Seekleaf to child node %llu", *node_off);
582 befs_debug(sb, "Node %llu is a leaf node", *node_off);
587 befs_debug(sb, "<--- %s ERROR", __func__);
666 * @sb: filesystem superblock
675 befs_bt_get_key(struct super_block *sb, struct befs_btree_node *node,
693 prev_key_end = fs16_to_cpu(sb, keylen_index[index - 1]);
695 *keylen = fs16_to_cpu(sb, keylen_index[index]) - prev_key_end;