zdb: ASSERT issues when DEBUG is not defined

If zdb is not built with DEBUG mode, the ASSERT macros will be
eliminated.

This will leave vim defined, but not used (gcc warning) and
checkpoint spacemap validation loop will do nothing.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Toomas Soome <tsoome@me.com>
Closes #11932
This commit is contained in:
Toomas Soome 2021-04-27 18:33:37 +03:00 committed by Tony Hutter
parent a59bf29606
commit d1277e2a13
1 changed files with 3 additions and 2 deletions

View File

@ -5840,7 +5840,8 @@ zdb_leak_init_prepare_indirect_vdevs(spa_t *spa, zdb_cb_t *zcb)
*/ */
VERIFY0(vdev_metaslab_init(vd, 0)); VERIFY0(vdev_metaslab_init(vd, 0));
vdev_indirect_mapping_t *vim = vd->vdev_indirect_mapping; vdev_indirect_mapping_t *vim __maybe_unused =
vd->vdev_indirect_mapping;
uint64_t vim_idx = 0; uint64_t vim_idx = 0;
for (uint64_t m = 0; m < vd->vdev_ms_count; m++) { for (uint64_t m = 0; m < vd->vdev_ms_count; m++) {
@ -6933,7 +6934,7 @@ verify_checkpoint_vdev_spacemaps(spa_t *checkpoint, spa_t *current)
for (uint64_t c = ckpoint_rvd->vdev_children; for (uint64_t c = ckpoint_rvd->vdev_children;
c < current_rvd->vdev_children; c++) { c < current_rvd->vdev_children; c++) {
vdev_t *current_vd = current_rvd->vdev_child[c]; vdev_t *current_vd = current_rvd->vdev_child[c];
ASSERT3P(current_vd->vdev_checkpoint_sm, ==, NULL); VERIFY3P(current_vd->vdev_checkpoint_sm, ==, NULL);
} }
} }