Project

General

Profile

Submit #2761 ยป 0001-sbin-hammer-remove-obsolete-spike-code-from-hammer-s.patch

tkusumi, 01/07/2015 04:33 AM

View differences:

sbin/hammer/cmd_show.c
} *btree_search_t;
static void print_btree_node(hammer_off_t node_offset, btree_search_t search,
int depth, int spike, hammer_tid_t mirror_tid,
int depth, hammer_tid_t mirror_tid,
hammer_base_elm_t left_bound,
hammer_base_elm_t right_bound);
static const char *check_data_crc(hammer_btree_elm_t elm);
......
printf("show %016jx lo %08x obj_id %016jx depth %d\n",
(uintmax_t)node_offset, lo, (uintmax_t)obj_id, depth);
}
print_btree_node(node_offset, searchp, depth, 0, HAMMER_MAX_TID,
left_bound, right_bound);
print_btree_node(node_offset, searchp, depth, 1, HAMMER_MAX_TID,
print_btree_node(node_offset, searchp, depth, HAMMER_MAX_TID,
left_bound, right_bound);
AssertOnFailure = 1;
......
static void
print_btree_node(hammer_off_t node_offset, btree_search_t search,
int depth, int spike, hammer_tid_t mirror_tid,
int depth, hammer_tid_t mirror_tid,
hammer_base_elm_t left_bound, hammer_base_elm_t right_bound)
{
struct buffer_info *buffer = NULL;
......
badc = 'B';
}
if (spike == 0) {
printf("%c%c NODE %016jx cnt=%02d p=%016jx "
"type=%c depth=%d",
badc,
badm,
(uintmax_t)node_offset, node->count,
(uintmax_t)node->parent,
(node->type ? node->type : '?'), depth);
printf(" mirror %016jx", (uintmax_t)node->mirror_tid);
if (QuietOpt < 3) {
printf(" fill=");
print_bigblock_fill(node_offset);
}
printf(" {\n");
printf("%c%c NODE %016jx cnt=%02d p=%016jx "
"type=%c depth=%d",
badc,
badm,
(uintmax_t)node_offset, node->count,
(uintmax_t)node->parent,
(node->type ? node->type : '?'), depth);
printf(" mirror %016jx", (uintmax_t)node->mirror_tid);
if (QuietOpt < 3) {
printf(" fill=");
print_bigblock_fill(node_offset);
}
printf(" {\n");
maxcount = (node->type == HAMMER_BTREE_TYPE_INTERNAL) ?
HAMMER_BTREE_INT_ELMS : HAMMER_BTREE_LEAF_ELMS;
maxcount = (node->type == HAMMER_BTREE_TYPE_INTERNAL) ?
HAMMER_BTREE_INT_ELMS : HAMMER_BTREE_LEAF_ELMS;
for (i = 0; i < node->count && i < maxcount; ++i) {
elm = &node->elms[i];
for (i = 0; i < node->count && i < maxcount; ++i) {
elm = &node->elms[i];
if (node->type != HAMMER_BTREE_TYPE_INTERNAL) {
ext = NULL;
if (search &&
elm->base.localization == search->lo &&
elm->base.obj_id == search->obj_id) {
ext = " *";
}
} else if (search) {
if (node->type != HAMMER_BTREE_TYPE_INTERNAL) {
ext = NULL;
if (search &&
elm->base.localization == search->lo &&
elm->base.obj_id == search->obj_id) {
ext = " *";
if (elm->base.localization > search->lo ||
(elm->base.localization == search->lo &&
elm->base.obj_id > search->obj_id)) {
ext = NULL;
}
if (elm[1].base.localization < search->lo ||
(elm[1].base.localization == search->lo &&
elm[1].base.obj_id < search->obj_id)) {
ext = NULL;
}
} else {
}
} else if (search) {
ext = " *";
if (elm->base.localization > search->lo ||
(elm->base.localization == search->lo &&
elm->base.obj_id > search->obj_id)) {
ext = NULL;
}
flags = print_elm_flags(node, node_offset,
elm, elm->base.btype,
left_bound, right_bound);
print_btree_elm(elm, i, node->type, flags, "ELM", ext);
if (elm[1].base.localization < search->lo ||
(elm[1].base.localization == search->lo &&
elm[1].base.obj_id < search->obj_id)) {
ext = NULL;
}
} else {
ext = NULL;
}
if (node->type == HAMMER_BTREE_TYPE_INTERNAL) {
elm = &node->elms[i];
flags = print_elm_flags(node, node_offset,
elm, 'I',
left_bound, right_bound);
print_btree_elm(elm, i, node->type, flags, "RBN", NULL);
}
printf(" }\n");
flags = print_elm_flags(node, node_offset,
elm, elm->base.btype,
left_bound, right_bound);
print_btree_elm(elm, i, node->type, flags, "ELM", ext);
}
if (node->type == HAMMER_BTREE_TYPE_INTERNAL) {
elm = &node->elms[i];
flags = print_elm_flags(node, node_offset,
elm, 'I',
left_bound, right_bound);
print_btree_elm(elm, i, node->type, flags, "RBN", NULL);
}
printf(" }\n");
for (i = 0; i < node->count; ++i) {
elm = &node->elms[i];
......
}
if (elm->internal.subtree_offset) {
print_btree_node(elm->internal.subtree_offset,
search, depth + 1, spike,
search, depth + 1,
elm->internal.mirror_tid,
&elm[0].base, &elm[1].base);
/*
    (1-1/1)