Searched refs:txg (Results 1 - 25 of 62) sorted by relevance

123

/freebsd-10-stable/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/
H A Dtxg.h42 #define TXG_INITIAL TXG_SIZE /* initial txg */
43 #define TXG_IDX (txg & TXG_MASK)
68 extern void txg_init(struct dsl_pool *dp, uint64_t txg);
77 extern void txg_delay(struct dsl_pool *dp, uint64_t txg, hrtime_t delta,
84 * necessary syncs immediately). If txg==0, wait for the currently open
85 * txg to finish syncing.
87 extern void txg_wait_synced(struct dsl_pool *dp, uint64_t txg);
93 * If txg == 0, wait for the next open txg.
95 extern void txg_wait_open(struct dsl_pool *dp, uint64_t txg);
[all...]
H A Ddsl_pool.h30 #include <sys/txg.h>
135 int dsl_pool_init(spa_t *spa, uint64_t txg, dsl_pool_t **dpp);
138 dsl_pool_t *dsl_pool_create(spa_t *spa, nvlist_t *zplprops, uint64_t txg);
139 void dsl_pool_sync(dsl_pool_t *dp, uint64_t txg);
140 void dsl_pool_sync_done(dsl_pool_t *dp, uint64_t txg);
145 void dsl_pool_undirty_space(dsl_pool_t *dp, int64_t space, uint64_t txg);
146 void dsl_free(dsl_pool_t *dp, uint64_t txg, const blkptr_t *bpp);
147 void dsl_free_sync(zio_t *pio, dsl_pool_t *dp, uint64_t txg,
H A Ddsl_synctask.h29 #include <sys/txg.h>
H A Dtrim_map.h39 extern void trim_map_free(vdev_t *vd, uint64_t offset, uint64_t size, uint64_t txg);
H A Dvdev.h56 extern int vdev_create(vdev_t *, uint64_t txg, boolean_t isreplace);
66 uint64_t txg, uint64_t size);
68 uint64_t txg, uint64_t size);
70 extern void vdev_dtl_reassess(vdev_t *vd, uint64_t txg, uint64_t scrub_txg,
79 extern int vdev_metaslab_init(vdev_t *vd, uint64_t txg);
83 extern void vdev_expand(vdev_t *vd, uint64_t txg);
130 extern int vdev_config_sync(vdev_t **svd, int svdcount, uint64_t txg);
151 extern nvlist_t *vdev_label_read_config(vdev_t *vd, uint64_t txg);
163 extern int vdev_label_init(vdev_t *vd, uint64_t txg, vdev_labeltype_t reason);
H A Dzfeature.h30 #include <sys/txg.h>
53 uint64_t *txg);
H A Dtxg_impl.h35 #include <sys/txg.h>
74 uint64_t tc_count[TXG_SIZE]; /* tx hold count on each txg */
94 uint64_t tx_open_txg; /* currently open txg id */
95 uint64_t tx_quiesced_txg; /* quiesced txg waiting for sync */
96 uint64_t tx_syncing_txg; /* currently syncing txg id */
97 uint64_t tx_synced_txg; /* last synced txg id */
101 uint64_t tx_sync_txg_waiting; /* txg we're waiting to sync */
102 uint64_t tx_quiesce_txg_waiting; /* txg we're waiting to open */
H A Ddsl_scan.h85 * scn_pausing - a scan that cannot be completed in a single txg or
91 * a scan at the specified txg value.
94 * the completion txg to the next txg. This is necessary
125 int dsl_scan_init(struct dsl_pool *dp, uint64_t txg);
130 void dsl_resilver_restart(struct dsl_pool *, uint64_t txg);
H A Ddmu_tx.h33 #include <sys/txg.h>
141 extern dmu_tx_t *dmu_tx_create_assigned(struct dsl_pool *dp, uint64_t txg);
H A Dzio.h35 #include <sys/txg.h>
522 extern zio_t *zio_write(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp,
529 extern zio_t *zio_rewrite(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp,
536 extern void zio_free(spa_t *spa, uint64_t txg, const blkptr_t *bp);
538 extern zio_t *zio_claim(zio_t *pio, spa_t *spa, uint64_t txg,
556 extern zio_t *zio_free_sync(zio_t *pio, spa_t *spa, uint64_t txg,
559 extern int zio_alloc_zil(spa_t *spa, uint64_t txg, blkptr_t *new_bp,
561 extern void zio_free_zil(spa_t *spa, uint64_t txg, blkptr_t *bp);
H A Darc.h171 zio_t *arc_write(zio_t *pio, spa_t *spa, uint64_t txg,
181 int arc_tempreserve_space(uint64_t reserve, uint64_t txg);
H A Ddmu_objset.h36 #include <sys/txg.h>
172 boolean_t dmu_objset_is_dirty(objset_t *os, uint64_t txg);
H A Dbpobj.h31 #include <sys/txg.h>
H A Dvdev_impl.h176 uint64_t vdev_crtxg; /* txg when top-level was added */
186 txg_list_t vdev_ms_list; /* per-txg dirty metaslab lists */
187 txg_list_t vdev_dtl_list; /* per-txg dirty DTL lists */
188 txg_node_t vdev_txg_node; /* per-txg dirty vdev linkage */
214 txg_node_t vdev_dtl_node; /* per-txg dirty DTL linkage */
350 extern void vdev_sync(vdev_t *vd, uint64_t txg);
351 extern void vdev_sync_done(vdev_t *vd, uint64_t txg);
352 extern void vdev_dirty(vdev_t *vd, int flags, void *arg, uint64_t txg);
353 extern void vdev_dirty_leaves(vdev_t *vd, int flags, uint64_t txg);
/freebsd-10-stable/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/
H A Duberblock.c47 uberblock_update(uberblock_t *ub, vdev_t *rvd, uint64_t txg) argument
49 ASSERT(ub->ub_txg < txg);
56 ub->ub_txg = txg;
61 return (ub->ub_rootbp.blk_birth == txg);
H A Dtxg.c41 * these transaction groups. Each successive transaction group (txg) is
44 * there may be an active txg associated with each state; each active txg may
46 * be up to three active txgs, and there is always a txg in the open state
49 * accepted into the txg in the open state, and are completed while the txg is
55 * When a new txg becomes active, it first enters the open state. New
57 * currently open txg. There is always a txg in the open state so that ZFS can
58 * accept new changes (though the txg ma
123 txg_init(dsl_pool_t *dp, uint64_t txg) argument
301 uint64_t txg; local
358 txg_quiesce(dsl_pool_t *dp, uint64_t txg) argument
415 txg_dispatch_callbacks(dsl_pool_t *dp, uint64_t txg) argument
468 uint64_t txg; local
544 uint64_t txg; local
586 txg_delay(dsl_pool_t *dp, uint64_t txg, hrtime_t delay, hrtime_t resolution) argument
612 txg_wait_synced(dsl_pool_t *dp, uint64_t txg) argument
637 txg_wait_open(dsl_pool_t *dp, uint64_t txg) argument
724 txg_list_empty(txg_list_t *tl, uint64_t txg) argument
752 txg_list_add(txg_list_t *tl, void *p, uint64_t txg) argument
776 txg_list_add_tail(txg_list_t *tl, void *p, uint64_t txg) argument
803 txg_list_remove(txg_list_t *tl, uint64_t txg) argument
825 txg_list_remove_this(txg_list_t *tl, void *p, uint64_t txg) argument
848 txg_list_member(txg_list_t *tl, void *p, uint64_t txg) argument
860 txg_list_head(txg_list_t *tl, uint64_t txg) argument
869 txg_list_next(txg_list_t *tl, void *p, uint64_t txg) argument
[all...]
H A Dzil.c47 * either the DMU transaction group (txg) commits them to the stable pool
112 * a single list in the zl_itxg[] that uses a high txg: ZILTEST_TXG
314 zil_parse_lr_func_t *parse_lr_func, void *arg, uint64_t txg)
353 if ((error = parse_blk_func(zilog, &blk, arg, txg)) != 0)
372 if ((error = parse_lr_func(zilog, lr, arg, txg)) != 0)
461 zil_alloc_lwb(zilog_t *zilog, blkptr_t *bp, boolean_t slog, uint64_t txg) argument
470 lwb->lwb_max_txg = txg;
493 zilog_dirty(zilog_t *zilog, uint64_t txg) argument
501 if (txg_list_add(&dp->dp_dirty_zilogs, zilog, txg)) {
508 * Determine if the zil is dirty in the specified txg
313 zil_parse(zilog_t *zilog, zil_parse_blk_func_t *parse_blk_func, zil_parse_lr_func_t *parse_lr_func, void *arg, uint64_t txg) argument
515 zilog_is_dirty_in_txg(zilog_t *zilog, uint64_t txg) argument
548 uint64_t txg = 0; local
623 uint64_t txg; local
972 uint64_t txg; local
1091 uint64_t txg = lrc->lrc_txg; local
1269 uint64_t otxg, txg; local
1313 uint64_t txg; local
1429 uint64_t otxg, txg; local
1473 uint64_t otxg, txg; local
1526 uint64_t txg; local
1668 uint64_t txg = dmu_tx_get_txg(tx); local
1865 uint64_t txg = 0; local
[all...]
H A Ddsl_pool.c80 * txg (dp_dirty_pertxg[]) and poolwide (dp_dirty_total) accounting of
83 * relevant, the per-txg value is useful for debugging. The tunable
88 * ensure that there is a txg syncing (see the comment in txg.c for a full
108 * If there is at least this much dirty data, push out a txg.
162 "Force a txg if the number of dirty buffer bytes exceed this value");
250 dsl_pool_open_impl(spa_t *spa, uint64_t txg) argument
259 txg_init(dp, txg);
280 dsl_pool_init(spa_t *spa, uint64_t txg, dsl_pool_t **dpp) argument
283 dsl_pool_t *dp = dsl_pool_open_impl(spa, txg);
441 dsl_pool_create(spa_t *spa, nvlist_t *zplprops, uint64_t txg) argument
557 dsl_pool_sync(dsl_pool_t *dp, uint64_t txg) argument
681 dsl_pool_sync_done(dsl_pool_t *dp, uint64_t txg) argument
757 dsl_pool_undirty_space(dsl_pool_t *dp, int64_t space, uint64_t txg) argument
[all...]
H A Dtrim_map.c59 list_t tm_head; /* List of segments sorted by txg. */
73 uint64_t ts_txg; /* Segment creation txg. */
211 trim_map_segment_add(trim_map_t *tm, uint64_t start, uint64_t end, uint64_t txg) argument
228 trim_map_segment_add(tm, start, ts->ts_start, txg);
230 trim_map_segment_add(tm, ts->ts_end, end, txg);
245 ts_after->ts_txg = txg;
252 ts_before->ts_txg = txg;
258 ts_after->ts_txg = txg;
265 ts->ts_txg = txg;
308 trim_map_free_locked(trim_map_t *tm, uint64_t start, uint64_t end, uint64_t txg) argument
329 trim_map_free(vdev_t *vd, uint64_t offset, uint64_t size, uint64_t txg) argument
421 trim_map_first(trim_map_t *tm, uint64_t txg, uint64_t txgsafe, hrtime_t time, boolean_t force) argument
[all...]
H A Dmetaslab.c558 * have any space until we finish syncing out this txg.
1429 metaslab_init(metaslab_group_t *mg, uint64_t id, uint64_t object, uint64_t txg, argument
1474 * If we're opening an existing pool (txg == 0) or creating
1475 * a new one (txg == TXG_INITIAL), all space is available now.
1477 * does not become available until after this txg has synced.
1479 if (txg <= TXG_INITIAL)
1493 if (txg != 0) {
1494 vdev_dirty(vd, 0, NULL, txg);
1495 vdev_dirty(vd, VDD_METASLAB, ms, txg);
1608 uint64_t txg local
1913 metaslab_condense(metaslab_t *msp, uint64_t txg, dmu_tx_t *tx) argument
1998 metaslab_sync(metaslab_t *msp, uint64_t txg) argument
2132 metaslab_sync_done(metaslab_t *msp, uint64_t txg) argument
2304 metaslab_group_alloc(metaslab_group_t *mg, uint64_t asize, uint64_t txg, uint64_t min_distance, dva_t *dva, int d) argument
2423 metaslab_alloc_dva(spa_t *spa, metaslab_class_t *mc, uint64_t psize, dva_t *dva, int d, dva_t *hintdva, uint64_t txg, int flags) argument
2651 metaslab_free_dva(spa_t *spa, const dva_t *dva, uint64_t txg, boolean_t now) argument
2708 metaslab_claim_dva(spa_t *spa, const dva_t *dva, uint64_t txg) argument
2807 metaslab_alloc(spa_t *spa, metaslab_class_t *mc, uint64_t psize, blkptr_t *bp, int ndvas, uint64_t txg, blkptr_t *hintbp, int flags, zio_t *zio) argument
2861 metaslab_free(spa_t *spa, const blkptr_t *bp, uint64_t txg, boolean_t now) argument
2878 metaslab_claim(spa_t *spa, const blkptr_t *bp, uint64_t txg) argument
[all...]
H A Dvdev_label.c123 * txg Transaction group in which this label was written
427 * which don't have a txg value stored on their label (i.e. spares/cache)
428 * or have not been completely initialized (txg = 0) just return
431 * 'txg' value.
434 vdev_label_read_config(vdev_t *vd, uint64_t txg) argument
468 * Auxiliary vdevs won't have txg values in their
479 } else if (label_txg <= txg && label_txg > best_txg) {
511 uint64_t state, pool_guid, device_guid, txg, spare_pool; local
541 &txg) != 0)) {
567 txg
765 uint64_t txg = 0ULL; local
1140 vdev_label_sync(zio_t *zio, vdev_t *vd, int l, uint64_t txg, int flags) argument
1182 vdev_label_sync_list(spa_t *spa, int l, uint64_t txg, int flags) argument
1235 vdev_config_sync(vdev_t **svd, int svdcount, uint64_t txg) argument
[all...]
H A Dspa_config.c390 spa_config_generate(spa_t *spa, vdev_t *vd, uint64_t txg, int getstats) argument
409 * If txg is -1, report the current value of spa->spa_config_txg.
411 if (txg == -1ULL)
412 txg = spa->spa_config_txg;
436 fnvlist_add_uint64(config, ZPOOL_CONFIG_POOL_TXG, txg);
550 uint64_t txg; local
556 txg = spa_last_synced_txg(spa) + 1;
573 vdev_expand(tvd, txg);
581 txg_wait_synced(spa->spa_dsl_pool, txg);
H A Dspa.c54 #include <sys/txg.h>
1866 * current txg so that the "stubby" block can be removed
2833 * This must all happen in a single txg.
2929 * If spa_load() fails this function will try loading prior txg's. If
2931 * will be rewound to that txg. If 'state' is not SPA_LOAD_RECOVER this
3597 uint64_t txg = TXG_INITIAL; local
3655 spa->spa_first_txg = txg;
3656 spa->spa_uberblock.ub_txg = txg - 1;
3686 (error = vdev_create(rvd, txg, B_FALSE)) == 0 &&
3687 (error = spa_validate_aux(spa, nvroot, txg,
3905 spa_alt_rootvdev(vdev_t *vd, vdev_t **avd, uint64_t *txg) argument
3950 uint64_t guid, txg; local
4079 uint64_t txg; local
4179 uint64_t txg; local
4701 uint64_t txg, id; local
4814 uint64_t txg, dtl_max_txg; local
5018 uint64_t txg; local
5257 uint64_t txg, *glist; local
5584 uint64_t txg; local
5683 uint64_t txg = 0; local
6657 spa_sync(spa_t *spa, uint64_t txg) argument
[all...]
H A Dvdev.c931 vdev_metaslab_init(vdev_t *vd, uint64_t txg) argument
941 ASSERT(txg == 0 || spa_config_held(spa, SCL_ALLOC, RW_WRITER));
975 if (txg == 0) {
983 error = metaslab_init(vd->vdev_mg, m, object, txg,
989 if (txg == 0)
1000 if (txg == 0)
1483 uint64_t txg = spa_last_synced_txg(spa) != 0 ? local
1486 if ((label = vdev_label_read_config(vd, txg)) == NULL) {
1681 vdev_create(vdev_t *vd, uint64_t txg, boolean_t isreplacing) argument
1701 (error = vdev_label_init(vd, txg, isreplacin
1749 vdev_dirty(vdev_t *vd, int flags, void *arg, uint64_t txg) argument
1766 vdev_dirty_leaves(vdev_t *vd, int flags, uint64_t txg) argument
1814 vdev_dtl_dirty(vdev_t *vd, vdev_dtl_type_t t, uint64_t txg, uint64_t size) argument
1829 vdev_dtl_contains(vdev_t *vd, vdev_dtl_type_t t, uint64_t txg, uint64_t size) argument
1934 vdev_dtl_reassess(vdev_t *vd, uint64_t txg, uint64_t scrub_txg, int scrub_done) argument
2088 vdev_dtl_sync(vdev_t *vd, uint64_t txg) argument
2305 vdev_remove(vdev_t *vd, uint64_t txg) argument
2357 vdev_sync_done(vdev_t *vd, uint64_t txg) argument
2372 vdev_sync(vdev_t *vd, uint64_t txg) argument
2895 uint64_t txg = zio->io_txg; local
3493 vdev_expand(vdev_t *vd, uint64_t txg) argument
[all...]
/freebsd-10-stable/cddl/contrib/opensolaris/cmd/ztest/
H A Dztest.c65 * the transaction group number is less than the current, open txg.
91 #include <sys/txg.h>
391 * The callbacks are ordered by txg number.
1227 uint64_t txg; local
1245 txg = dmu_tx_get_txg(tx);
1246 ASSERT(txg != 0);
1247 return (txg);
1275 uint64_t offset, uint64_t gen, uint64_t txg, uint64_t crtxg)
1282 bt->bt_txg = txg;
1288 uint64_t offset, uint64_t gen, uint64_t txg, uint64_
1274 ztest_bt_generate(ztest_block_tag_t *bt, objset_t *os, uint64_t object, uint64_t offset, uint64_t gen, uint64_t txg, uint64_t crtxg) argument
1287 ztest_bt_verify(ztest_block_tag_t *bt, objset_t *os, uint64_t object, uint64_t offset, uint64_t gen, uint64_t txg, uint64_t crtxg) argument
1433 uint64_t txg; local
1516 uint64_t object, txg; local
1568 uint64_t gen, txg, lrtxg, crtxg; local
1690 uint64_t txg; local
1731 uint64_t txg, lrtxg, crtxg; local
1849 uint64_t txg = lr->lr_common.lrc_txg; local
2142 uint64_t txg; local
2159 txg_wait_synced(dmu_objset_pool(os), txg); local
3554 uint64_t n, s, txg; local
3773 compare_and_update_pbbufs(uint64_t s, bufwad_t *packbuf, bufwad_t *bigbuf, uint64_t bigsize, uint64_t n, uint64_t chunksize, uint64_t txg) argument
3829 uint64_t n, s, txg; local
4117 uint64_t txg, last_txg; local
4256 uint64_t object, txg; local
4297 uint64_t txg, object, count, wsize, wc, zl_wsize, zl_wc; local
4460 ztest_create_cb_data(objset_t *os, uint64_t txg) argument
4489 uint64_t old_txg, txg; local
5050 uint64_t object, blocksize, txg, pattern, psize; local
5120 txg_wait_synced(spa_get_dsl(spa), txg); local
[all...]

Completed in 147 milliseconds

123