# HG changeset patch # User Will Andrews # Date 1370970831 28800 # Node ID 0c8d9998d589e803f28c24d09af7b6a62a013b17 # Parent 4a7f6353bcf01ca60f91c60a670807ec94d7158f 3747 txg commit callbacks don't work Reviewed by: Matthew Ahrens Reviewed by: Eric Schrock Approved by: Christopher Siden diff -r 4a7f6353bcf0 -r 0c8d9998d589 usr/src/cmd/ztest/ztest.c --- a/usr/src/cmd/ztest/ztest.c Tue Jun 11 09:13:47 2013 -0800 +++ b/usr/src/cmd/ztest/ztest.c Tue Jun 11 09:13:51 2013 -0800 @@ -4507,7 +4507,7 @@ */ tmp_cb = list_head(&zcl.zcl_callbacks); if (tmp_cb != NULL && - tmp_cb->zcd_txg > txg - ZTEST_COMMIT_CALLBACK_THRESH) { + (txg - ZTEST_COMMIT_CALLBACK_THRESH) > tmp_cb->zcd_txg) { fatal(0, "Commit callback threshold exceeded, oldest txg: %" PRIu64 ", open txg: %" PRIu64 "\n", tmp_cb->zcd_txg, txg); } diff -r 4a7f6353bcf0 -r 0c8d9998d589 usr/src/uts/common/fs/zfs/txg.c --- a/usr/src/uts/common/fs/zfs/txg.c Tue Jun 11 09:13:47 2013 -0800 +++ b/usr/src/uts/common/fs/zfs/txg.c Tue Jun 11 09:13:51 2013 -0800 @@ -435,7 +435,7 @@ list_create(cb_list, sizeof (dmu_tx_callback_t), offsetof(dmu_tx_callback_t, dcb_node)); - list_move_tail(&tc->tc_callbacks[g], cb_list); + list_move_tail(cb_list, &tc->tc_callbacks[g]); (void) taskq_dispatch(tx->tx_commit_cb_taskq, (task_func_t *) txg_do_callbacks, cb_list, TQ_SLEEP);