Rebase master to b105
[zfs.git] / module / zfs / txg.c
index 2bbf2f0..e3c0e2a 100644 (file)
@@ -63,6 +63,12 @@ txg_init(dsl_pool_t *dp, uint64_t txg)
        rw_init(&tx->tx_suspend, NULL, RW_DEFAULT, NULL);
        mutex_init(&tx->tx_sync_lock, NULL, MUTEX_DEFAULT, NULL);
 
+       cv_init(&tx->tx_sync_more_cv, NULL, CV_DEFAULT, NULL);
+       cv_init(&tx->tx_sync_done_cv, NULL, CV_DEFAULT, NULL);
+       cv_init(&tx->tx_quiesce_more_cv, NULL, CV_DEFAULT, NULL);
+       cv_init(&tx->tx_quiesce_done_cv, NULL, CV_DEFAULT, NULL);
+       cv_init(&tx->tx_exit_cv, NULL, CV_DEFAULT, NULL);
+
        tx->tx_open_txg = txg;
 }
 
@@ -80,6 +86,12 @@ txg_fini(dsl_pool_t *dp)
        rw_destroy(&tx->tx_suspend);
        mutex_destroy(&tx->tx_sync_lock);
 
+       cv_destroy(&tx->tx_sync_more_cv);
+       cv_destroy(&tx->tx_sync_done_cv);
+       cv_destroy(&tx->tx_quiesce_more_cv);
+       cv_destroy(&tx->tx_quiesce_done_cv);
+       cv_destroy(&tx->tx_exit_cv);
+
        for (c = 0; c < max_ncpus; c++) {
                int i;