[thin_check/dump] Under populated nodes are now 'non fatal errors'

thin_dump always ignores non-fatal-errors.
This commit is contained in:
Joe Thornber
2020-07-02 16:03:23 +01:00
parent 9adcc7911f
commit fec11289b0
9 changed files with 98 additions and 56 deletions

View File

@ -228,54 +228,60 @@ namespace {
void
thin_provisioning::walk_mapping_tree(dev_tree const &tree,
mapping_tree_detail::device_visitor &dev_v,
mapping_tree_detail::damage_visitor &dv)
mapping_tree_detail::damage_visitor &dv,
bool ignore_non_fatal)
{
dev_tree_damage_visitor ll_dv(dv);
btree_visit_values(tree, dev_v, ll_dv);
btree_visit_values(tree, dev_v, ll_dv, ignore_non_fatal);
}
void
thin_provisioning::check_mapping_tree(dev_tree const &tree,
mapping_tree_detail::damage_visitor &visitor)
mapping_tree_detail::damage_visitor &visitor,
bool ignore_non_fatal)
{
noop_block_visitor dev_v;
walk_mapping_tree(tree, dev_v, visitor);
walk_mapping_tree(tree, dev_v, visitor, ignore_non_fatal);
}
void
thin_provisioning::walk_mapping_tree(mapping_tree const &tree,
mapping_tree_detail::mapping_visitor &mv,
mapping_tree_detail::damage_visitor &dv)
mapping_tree_detail::damage_visitor &dv,
bool ignore_non_fatal)
{
mapping_tree_damage_visitor ll_dv(dv);
btree_visit_values(tree, mv, ll_dv);
btree_visit_values(tree, mv, ll_dv, ignore_non_fatal);
}
void
thin_provisioning::check_mapping_tree(mapping_tree const &tree,
mapping_tree_detail::damage_visitor &visitor)
mapping_tree_detail::damage_visitor &visitor,
bool ignore_non_fatal)
{
noop_block_time_visitor mv;
walk_mapping_tree(tree, mv, visitor);
walk_mapping_tree(tree, mv, visitor, ignore_non_fatal);
}
void
thin_provisioning::walk_mapping_tree(single_mapping_tree const &tree,
uint64_t dev_id,
mapping_tree_detail::mapping_visitor &mv,
mapping_tree_detail::damage_visitor &dv)
mapping_tree_detail::damage_visitor &dv,
bool ignore_non_fatal)
{
single_mapping_tree_damage_visitor ll_dv(dv, dev_id);
btree_visit_values(tree, mv, ll_dv);
btree_visit_values(tree, mv, ll_dv, ignore_non_fatal);
}
void
thin_provisioning::check_mapping_tree(single_mapping_tree const &tree,
uint64_t dev_id,
mapping_tree_detail::damage_visitor &visitor)
mapping_tree_detail::damage_visitor &visitor,
bool ignore_non_fatal)
{
noop_block_time_visitor mv;
walk_mapping_tree(tree, dev_id, mv, visitor);
walk_mapping_tree(tree, dev_id, mv, visitor, ignore_non_fatal);
}
//----------------------------------------------------------------