diff --git a/module/zfs/spa.c b/module/zfs/spa.c index bc2d1e1c4..29c1d4ddf 100644 --- a/module/zfs/spa.c +++ b/module/zfs/spa.c @@ -1683,6 +1683,7 @@ spa_activate(spa_t *spa, spa_mode_t mode) ASSERT(spa->spa_state == POOL_STATE_UNINITIALIZED); spa->spa_state = POOL_STATE_ACTIVE; + spa->spa_final_txg = UINT64_MAX; spa->spa_mode = mode; spa->spa_read_spacemaps = spa_mode_readable_spacemaps; @@ -2085,6 +2086,11 @@ spa_unload(spa_t *spa) vdev_rebuild_stop_all(spa); l2arc_spa_rebuild_stop(spa); } + + spa_config_enter(spa, SCL_ALL, FTAG, RW_WRITER); + spa->spa_final_txg = spa_last_synced_txg(spa) + + TXG_DEFER_SIZE + 1; + spa_config_exit(spa, SCL_ALL, FTAG); } /*