Lines Matching defs:txg
96 * disk at the end of each txg.
99 * (ddt_tree). At the start of a txg, ddt_tree is empty. When an entry is
105 * The live entry will be modified during the txg, usually by modifying the
106 * refcount, but sometimes by adding or updating DVAs. At the end of the txg
110 * the next txg can start.
137 * Historically, all entries modified on a txg were written back to dedup
138 * storage objects at the end of every txg. This could cause significant
144 * enabled, at the end of each txg, modified entries will be copied to an
151 * Each txg, some amount of the in-memory log will be flushed out to a DDT
164 * During the end-of-txg sync, any entries with a dde_repair_abd get a
253 * Don't do more than this many incremental flush passes per txg.
258 * Minimum time to flush per txg.
263 * Minimum entries to flush per txg.
317 /* avg updated/flushed entries per txg */
614 blkptr_t *bp, uint64_t txg)
616 ASSERT3U(txg, !=, 0);
631 BP_SET_BIRTH(bp, txg, phys_birth);
790 ddt_phys_variant_t v, uint64_t txg)
803 zio_free(ddt->ddt_spa, txg, &blk);
1993 /* Returns true if done for this txg */
1999 /* First run this txg, get set up */
2013 * try to dump as much as possible on this txg. In
2021 /* We already decided we're done for this txg */
2036 /* Too many passes this txg, defer until next. */
2042 /* Nothing to flush, done for this txg. */
2054 /* Too long since we started, done for this txg. */
2077 /* Later pass, calculate from this txg so far */
2120 /* No more passes needed this txg */
2134 ddt_flush_force_update_txg(ddt_t *ddt, uint64_t txg)
2140 if (txg == 0) {
2144 txg = ddt->ddt_flush_force_txg;
2149 * the wanted txg, set the force txg, otherwise clear it.
2153 ddt->ddt_log_active->ddl_first_txg <= txg) ||
2155 ddt->ddt_log_flushing->ddl_first_txg <= txg)) {
2156 ddt->ddt_flush_force_txg = txg;
2161 * Nothing to flush behind the given txg, so we can clear force flush
2181 /* No more flushing this txg, so we can do end-of-txg housekeeping */
2338 ddt_sync(spa_t *spa, uint64_t txg)
2344 ASSERT3U(spa_syncing_txg(spa), ==, txg);
2346 tx = dmu_tx_create_assigned(spa->spa_dsl_pool, txg);
2377 ddt_walk_init(spa_t *spa, uint64_t txg)
2379 if (txg == 0)
2380 txg = spa_syncing_txg(spa);
2388 ddt_flush_force_update_txg(ddt, txg);
2543 * this txg and is no longer stale; skip it.
2683 zfs_dbgmsg("pruned %llu entries (%d%%) across %llu txg syncs",