X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=module%2Fzfs%2Ftxg.c;fp=module%2Fzfs%2Ftxg.c;h=e3c0e2a134239eb05cd9f4c98c0574f49dfcc670;hb=fb5f0bc83330c8a0236c4d34a23723ac1974971a;hp=2bbf2f086c15441fa4374cc044fea79d6e0e7936;hpb=42bcb36c8987b0b11411ce6cf8339694b624a17c;p=zfs.git diff --git a/module/zfs/txg.c b/module/zfs/txg.c index 2bbf2f0..e3c0e2a 100644 --- a/module/zfs/txg.c +++ b/module/zfs/txg.c @@ -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;