Searched refs:txg (Results 26 - 50 of 69) sorted by relevance

123

/freebsd-12-stable/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/
H A Dbpobj.h31 #include <sys/txg.h>
H A Dvdev_impl.h250 uint64_t vdev_crtxg; /* txg when top-level was added */
260 txg_list_t vdev_ms_list; /* per-txg dirty metaslab lists */
261 txg_list_t vdev_dtl_list; /* per-txg dirty DTL lists */
262 txg_node_t vdev_txg_node; /* per-txg dirty vdev linkage */
341 txg_node_t vdev_dtl_node; /* per-txg dirty DTL linkage */
483 extern void vdev_sync(vdev_t *vd, uint64_t txg);
484 extern void vdev_sync_done(vdev_t *vd, uint64_t txg);
485 extern void vdev_dirty(vdev_t *vd, int flags, void *arg, uint64_t txg);
486 extern void vdev_dirty_leaves(vdev_t *vd, int flags, uint64_t txg);
H A Dddt.h185 uint64_t txg);
196 uint64_t txg);
237 extern void ddt_sync(spa_t *spa, uint64_t txg);
H A Dzio.h36 #include <sys/txg.h>
524 extern zio_t *zio_write(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp,
531 extern zio_t *zio_rewrite(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp,
538 extern void zio_free(spa_t *spa, uint64_t txg, const blkptr_t *bp);
540 extern zio_t *zio_claim(zio_t *pio, spa_t *spa, uint64_t txg,
558 extern zio_t *zio_free_sync(zio_t *pio, spa_t *spa, uint64_t txg,
561 extern int zio_alloc_zil(spa_t *spa, uint64_t objset, uint64_t txg,
H A Dmetaslab.h32 #include <sys/txg.h>
H A Darc.h248 zio_t *arc_write(zio_t *pio, spa_t *spa, uint64_t txg,
261 int arc_tempreserve_space(spa_t *spa, uint64_t reserve, uint64_t txg);
H A Ddmu_objset.h36 #include <sys/txg.h>
198 boolean_t dmu_objset_is_dirty(objset_t *os, uint64_t txg);
H A Dmetaslab_impl.h37 #include <sys/txg.h>
252 * it reaches mg_max_alloc_queue_depth. The cur_max resets every txg to
294 * added to a per txg allocation tree (ms_allocating). As blocks are
302 * transactions groups later. For example, a block that is freed in txg
303 * 50 will not be available for reallocation until txg 52 (50 +
325 * which is only updated in syncing context. Each time we sync a txg,
326 * we append the allocs and frees from that txg to the space map. The
388 range_tree_t *ms_freeing; /* to free this syncing txg */
389 range_tree_t *ms_freed; /* already freed this syncing txg */
426 * one txg wil
[all...]
H A Dspa.h207 * 9 | physical birth txg |
209 * a | logical birth txg |
239 * phys birth txg when dva[0] was written; zero if same as logical birth txg
241 * txg, but they could be different if they were moved by
270 * a | logical birth txg |
358 uint64_t blk_phys_birth; /* txg when block was allocated */
715 extern void spa_sync(spa_t *spa, uint64_t txg); /* only for DMU use */
732 extern nvlist_t *spa_config_generate(spa_t *spa, vdev_t *vd, uint64_t txg,
773 extern void spa_vdev_config_exit(spa_t *spa, vdev_t *vd, uint64_t txg,
[all...]
H A Ddnode.h33 #include <sys/txg.h>
306 uint64_t dn_dirty_txg; /* txg dnode was last dirtied */
411 int minlvl, uint64_t blkfill, uint64_t txg);
509 * which had already been unlinked in an earlier txg.
/freebsd-12-stable/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/
H A Dddt.c260 ddt_bp_fill(const ddt_phys_t *ddp, blkptr_t *bp, uint64_t txg) argument
262 ASSERT(txg != 0);
266 BP_SET_BIRTH(bp, txg, ddp->ddp_phys_birth);
332 ddt_phys_free(ddt_t *ddt, ddt_key_t *ddk, ddt_phys_t *ddp, uint64_t txg) argument
338 zio_free(ddt->ddt_spa, txg, &blk);
1012 ddt_sync_entry(ddt_t *ddt, ddt_entry_t *dde, dmu_tx_t *tx, uint64_t txg) argument
1035 ddt_phys_free(ddt, ddk, ddp, txg);
1039 ddt_phys_free(ddt, ddk, ddp, txg);
1079 ddt_sync_table(ddt_t *ddt, dmu_tx_t *tx, uint64_t txg) argument
1097 ddt_sync_entry(ddt, dde, tx, txg);
1122 ddt_sync(spa_t *spa, uint64_t txg) argument
[all...]
H A Dvdev_indirect_births.c127 uint64_t max_offset, uint64_t txg, dmu_tx_t *tx)
141 vibe.vibe_phys_birth_txg = txg;
170 * Return the txg in which the given range was copied (i.e. its physical
171 * birth txg). The specified offset+asize must be contiguously mapped
180 * specified txg.
126 vdev_indirect_births_add_entry(vdev_indirect_births_t *vib, uint64_t max_offset, uint64_t txg, dmu_tx_t *tx) argument
H A Dzio.c33 #include <sys/txg.h>
639 zio_create(zio_t *pio, spa_t *spa, uint64_t txg, const blkptr_t *bp, argument
692 zio->io_txg = txg;
894 zio_write(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp, argument
912 zio = zio_create(pio, spa, txg, bp, data, lsize, psize, done, private,
936 zio_rewrite(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp, abd_t *data, argument
942 zio = zio_create(pio, spa, txg, bp, data, size, size, done, private,
969 zio_free(spa_t *spa, uint64_t txg, const blkptr_t *bp) argument
984 * Frees that are for the currently-syncing txg, are not going to be
990 txg !
1000 zio_free_sync(zio_t *pio, spa_t *spa, uint64_t txg, const blkptr_t *bp, uint64_t size, enum zio_flag flags) argument
1038 zio_claim(zio_t *pio, spa_t *spa, uint64_t txg, const blkptr_t *bp, zio_done_func_t *done, void *private, enum zio_flag flags) argument
2346 uint64_t txg = pio->io_txg; local
2801 uint64_t txg = zio->io_txg; local
3157 zio_alloc_zil(spa_t *spa, uint64_t objset, uint64_t txg, blkptr_t *new_bp, blkptr_t *old_bp, uint64_t size, boolean_t *slog) argument
[all...]
H A Ddnode.c597 dprintf("os=%p obj=%" PRIu64 " txg=%" PRIu64
1620 uint64_t txg = tx->tx_txg; local
1632 ASSERT(dn->dn_free_txg == 0 || dn->dn_free_txg >= txg);
1641 multilist_t *dirtylist = os->os_dirty_dnodes[txg & TXG_MASK];
1647 if (multilist_link_active(&dn->dn_dirty_link[txg & TXG_MASK])) {
1655 ASSERT0(dn->dn_next_bonuslen[txg&TXG_MASK]);
1656 ASSERT0(dn->dn_next_blksz[txg&TXG_MASK]);
1657 ASSERT0(dn->dn_next_bonustype[txg&TXG_MASK]);
1659 dprintf_ds(os->os_dsl_dataset, "obj=%llu txg=%llu\n",
1660 dn->dn_object, txg);
2225 dnode_next_offset_level(dnode_t *dn, int flags, uint64_t *offset, int lvl, uint64_t blkfill, uint64_t txg) argument
2362 dnode_next_offset(dnode_t *dn, int flags, uint64_t *offset, int minlvl, uint64_t blkfill, uint64_t txg) argument
[all...]
H A Ddmu_object.c103 * from the beginning at most once per txg. If we
115 * os_scan_dnodes is set during txg sync if enough
328 * after the specified txg.
331 dmu_object_next(objset_t *os, uint64_t *objectp, boolean_t hole, uint64_t txg) argument
382 (hole ? DNODE_FIND_HOLE : 0), &offset, 0, DNODES_PER_BLOCK, txg);
H A Dspa_errlog.c343 spa_errlog_sync(spa_t *spa, uint64_t txg) argument
368 tx = dmu_tx_create_assigned(spa->spa_dsl_pool, txg);
H A Dzfeature.c486 * OUT txg argument.
488 * Returns B_TRUE if the feature is enabled, in which case txg will be filled
493 spa_feature_enabled_txg(spa_t *spa, spa_feature_t fid, uint64_t *txg) argument
501 err = feature_get_enabled_txg(spa, &spa_feature_table[fid], txg);
H A Ddbuf.c1305 * first time in a txg, when we are freeing a range in a dnode that includes
1313 dbuf_fix_old_data(dmu_buf_impl_t *db, uint64_t txg) argument
1334 ASSERT(dr->dr_txg >= txg - 2);
1498 uint64_t txg = dr->dr_txg; local
1517 zio_free(db->db_objset->os_spa, txg, bp);
1544 uint64_t txg = tx->tx_txg; local
1601 if (dr->dr_txg == txg) {
1618 dbuf_fix_old_data(db, txg);
1859 * transaction group won't leak out when we sync the older txg.
1917 * This buffer is now part of this txg
2030 uint64_t txg = tx->tx_txg; local
2067 dr->dr_accounted, txg); local
3499 uint64_t txg = tx->tx_txg; local
4127 uint64_t txg = tx->tx_txg; local
[all...]
H A Dvdev_geom.c449 uint64_t psize, state, txg; local
505 &txg) != 0 || txg == 0)) {
549 uint64_t id, txg, known_txg; local
569 VERIFY(nvlist_lookup_uint64(cfg, ZPOOL_CONFIG_POOL_TXG, &txg) == 0);
582 if (txg <= known_txg)
H A Ddsl_scan.c124 uint64_t *txg);
125 static void scan_ds_queue_insert(dsl_scan_t *scn, uint64_t dsobj, uint64_t txg);
134 * limit before each txg. If finer-grained control of this is needed
148 * which would cause long txg sync times. No matter what, we will not
175 unsigned int zfs_scrub_min_time_ms = 1000; /* min millisecs to scrub per txg */
176 unsigned int zfs_free_min_time_ms = 1000; /* min millisecs to free per txg */
177 unsigned int zfs_obsolete_min_time_ms = 500; /* min millisecs to obsolete per txg */
178 unsigned int zfs_resilver_min_time_ms = 3000; /* min millisecs to resilver per txg */
190 &zfs_scrub_min_time_ms, 0, "Min millisecs to scrub per txg");
192 &zfs_free_min_time_ms, 0, "Min millisecs to free per txg");
416 dsl_scan_init(dsl_pool_t *dp, uint64_t txg) argument
959 dsl_resilver_restart(dsl_pool_t *dp, uint64_t txg) argument
976 dsl_free(dsl_pool_t *dp, uint64_t txg, const blkptr_t *bp) argument
982 dsl_free_sync(zio_t *pio, dsl_pool_t *dp, uint64_t txg, const blkptr_t *bpp) argument
1012 scan_ds_queue_contains(dsl_scan_t *scn, uint64_t dsobj, uint64_t *txg) argument
1024 scan_ds_queue_insert(dsl_scan_t *scn, uint64_t dsobj, uint64_t txg) argument
2526 uint64_t txg = sds->sds_txg; local
[all...]
H A Ddmu.c74 "Percentage of dirtied indirect blocks from frees allowed in one txg");
833 uint64_t txg = dmu_tx_get_txg(tx); local
837 dp->dp_long_free_dirty_pertxg[txg & TXG_MASK];
863 dp->dp_long_free_dirty_pertxg[txg & TXG_MASK] +=
868 uint64_t, txg);
2129 * the lwb's "max txg" takes this tx's txg into account.
2140 * Since we are currently syncing this txg, it's nontrivial to
2144 * txg. We can not nopwrite against it because it will be changed
2146 * dirty in a future txg)
2197 dmu_sync(zio_t *pio, uint64_t txg, dmu_sync_cb_t *done, zgd_t *zgd) argument
[all...]
H A Ddnode_sync.c159 uint64_t txg = tx->tx_txg; local
192 while (dr && dr->dr_txg > txg)
194 ASSERT(dr == NULL || dr->dr_txg == txg);
210 * future txg.
233 * We don't usually free the indirect blocks here. If in one txg we have a
493 uint64_t txg = dr->dr_txg; local
513 dbuf_rele_and_unlock(db, (void *)(uintptr_t)txg, B_FALSE);
H A Dvdev_mirror.c431 uint64_t txg = zio->io_txg; local
434 ASSERT(zio->io_bp == NULL || BP_PHYSICAL_BIRTH(zio->io_bp) == txg);
452 if (vdev_dtl_contains(mc->mc_vd, DTL_MISSING, txg, 1)) {
485 * Every device is either missing or has this txg in its DTL.
/freebsd-12-stable/cddl/contrib/opensolaris/lib/libzfs/common/
H A Dlibzfs_import.c36 * pool guid -> toplevel vdev guid -> label txg
39 * examined every device, we pick the best label txg config for each toplevel
221 uint64_t pool_guid, vdev_guid, top_guid, txg, state; local
254 * we write a label with txg == 0 so that we can identify the device
266 &txg) != 0 || txg == 0) {
312 if (ce->ce_txg == txg)
320 ce->ce_txg = txg;
493 * We rely on the fact that the max txg for the
880 uint64_t state, txg, siz local
938 uint64_t state, txg, size; local
[all...]
/freebsd-12-stable/sys/cddl/contrib/opensolaris/uts/common/
H A DMakefile.files120 txg.o \

Completed in 240 milliseconds

123