HomeSort by relevance Sort by last modified time
    Searched refs:txg (Results 1 - 25 of 52) sorted by null

1 2 3

  /netvirt/usr/src/uts/common/fs/zfs/sys/
txg.h 30 #pragma ident "@(#)txg.h 1.1 05/10/30 SMI"
42 #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);
81 * necessary syncs immediately). If txg==0, wait for the currently open
82 * txg to finish syncing.
84 extern void txg_wait_synced(struct dsl_pool *dp, uint64_t txg);
90 * If txg == 0, wait for the next open txg.
92 extern void txg_wait_open(struct dsl_pool *dp, uint64_t txg);
    [all...]
metaslab.h 33 #include <sys/txg.h>
45 uint64_t start, uint64_t size, uint64_t txg);
47 extern void metaslab_sync(metaslab_t *msp, uint64_t txg);
48 extern void metaslab_sync_done(metaslab_t *msp, uint64_t txg);
51 blkptr_t *bp, int ncopies, uint64_t txg, blkptr_t *hintbp,
53 extern void metaslab_free(spa_t *spa, const blkptr_t *bp, uint64_t txg,
55 extern int metaslab_claim(spa_t *spa, const blkptr_t *bp, uint64_t txg);
dsl_pool.h 32 #include <sys/txg.h>
70 int dsl_pool_open(spa_t *spa, uint64_t txg, dsl_pool_t **dpp);
72 dsl_pool_t *dsl_pool_create(spa_t *spa, uint64_t txg);
73 void dsl_pool_sync(dsl_pool_t *dp, uint64_t txg);
uberblock.h 44 extern int uberblock_update(uberblock_t *ub, vdev_t *rvd, uint64_t txg);
vdev.h 53 extern int vdev_create(vdev_t *, uint64_t txg, boolean_t isreplace);
54 extern void vdev_init(vdev_t *, uint64_t txg);
61 extern void vdev_dtl_dirty(space_map_t *sm, uint64_t txg, uint64_t size);
62 extern int vdev_dtl_contains(space_map_t *sm, uint64_t txg, uint64_t size);
63 extern void vdev_dtl_reassess(vdev_t *vd, uint64_t txg, uint64_t scrub_txg,
68 extern int vdev_metaslab_init(vdev_t *vd, uint64_t txg);
111 extern int vdev_config_sync(vdev_t **svd, int svdcount, uint64_t txg);
132 extern int vdev_label_init(vdev_t *vd, uint64_t txg, vdev_labeltype_t reason);
metaslab_impl.h 34 #include <sys/txg.h>
59 * which is only updated in syncing context. Each time we sync a txg,
60 * we append the allocs and frees from that txg to the space map object.
61 * When the txg is done syncing, metaslab_sync_done() updates ms_smo
68 space_map_t ms_allocmap[TXG_SIZE]; /* allocated this txg */
69 space_map_t ms_freemap[TXG_SIZE]; /* freed this txg */
74 txg_node_t ms_txg_node; /* per-txg dirty metaslab links */
txg_impl.h 33 #include <sys/txg.h>
47 tx_cpu_t *tx_cpu; /* protects right to enter txg */
50 uint64_t tx_open_txg; /* currently open txg id */
51 uint64_t tx_quiesced_txg; /* quiesced txg waiting for sync */
52 uint64_t tx_syncing_txg; /* currently syncing txg id */
53 uint64_t tx_synced_txg; /* last synced txg id */
55 uint64_t tx_sync_txg_waiting; /* txg we're waiting to sync */
56 uint64_t tx_quiesce_txg_waiting; /* txg we're waiting to open */
dmu_tx.h 33 #include <sys/txg.h>
113 extern dmu_tx_t *dmu_tx_create_assigned(struct dsl_pool *dp, uint64_t txg);
zio.h 34 #include <sys/txg.h>
296 int ncopies, uint64_t txg, blkptr_t *bp, void *data, uint64_t size,
301 uint64_t txg, blkptr_t *bp, void *data, uint64_t size,
305 extern zio_t *zio_free(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp,
308 extern zio_t *zio_claim(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp,
325 blkptr_t *old_bp, uint64_t txg);
326 extern void zio_free_blk(spa_t *spa, blkptr_t *bp, uint64_t txg);
arc.h 93 int ncopies, uint64_t txg, blkptr_t *bp, arc_buf_t *buf,
96 int arc_free(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp,
bplist.h 33 #include <sys/txg.h>
dsl_synctask.h 31 #include <sys/txg.h>
  /netvirt/usr/src/uts/common/fs/zfs/
uberblock.c 49 uberblock_update(uberblock_t *ub, vdev_t *rvd, uint64_t txg)
51 ASSERT(ub->ub_txg < txg);
58 ub->ub_txg = txg;
62 return (ub->ub_rootbp.blk_birth == txg);
txg.c 26 #pragma ident "@(#)txg.c 1.3 08/01/03 SMI"
42 int txg_time = 5; /* max 5 seconds worth of delta per txg */
45 * Prepare the txg subsystem.
48 txg_init(dsl_pool_t *dp, uint64_t txg)
69 tx->tx_open_txg = txg;
73 * Close down the txg subsystem.
200 uint64_t txg; local
204 txg = tx->tx_open_txg;
205 tc->tc_count[txg & TXG_MASK]++;
208 th->th_txg = txg;
280 uint64_t txg; local
343 uint64_t txg; local
430 uint64_t txg = tx->tx_open_txg + 1; local
    [all...]
dsl_pool.c 56 dsl_pool_open_impl(spa_t *spa, uint64_t txg)
65 txg_init(dp, txg);
80 dsl_pool_open(spa_t *spa, uint64_t txg, dsl_pool_t **dpp)
83 dsl_pool_t *dp = dsl_pool_open_impl(spa, txg);
141 dsl_pool_create(spa_t *spa, uint64_t txg)
144 dsl_pool_t *dp = dsl_pool_open_impl(spa, txg);
145 dmu_tx_t *tx = dmu_tx_create_assigned(dp, txg);
169 dsl_pool_sync(dsl_pool_t *dp, uint64_t txg)
179 tx = dmu_tx_create_assigned(dp, txg);
182 while (ds = txg_list_remove(&dp->dp_dirty_datasets, txg)) {
    [all...]
metaslab.c 291 uint64_t start, uint64_t size, uint64_t txg)
314 * If we're opening an existing pool (txg == 0) or creating
315 * a new one (txg == TXG_INITIAL), all space is available now.
317 * does not become available until after this txg has synced.
319 if (txg <= TXG_INITIAL)
322 if (txg != 0) {
330 ASSERT(TXG_CLEAN(txg) == spa_last_synced_txg(vd->vdev_spa));
331 vdev_dirty(vd, 0, NULL, txg);
332 vdev_dirty(vd, VDD_METASLAB, msp, TXG_CLEAN(txg));
459 metaslab_sync(metaslab_t *msp, uint64_t txg)
    [all...]
vdev.c 727 vdev_metaslab_init(vdev_t *vd, uint64_t txg)
765 if (txg == 0) {
783 m << vd->vdev_ms_shift, 1ULL << vd->vdev_ms_shift, txg);
1107 vdev_create(vdev_t *vd, uint64_t txg, boolean_t isreplacing)
1126 if ((error = vdev_label_init(vd, txg, isreplacing ?
1142 vdev_init(vdev_t *vd, uint64_t txg)
1154 VERIFY(vdev_metaslab_init(vd, txg) == 0);
1158 vdev_dirty(vdev_t *vd, int flags, void *arg, uint64_t txg)
1164 (void) txg_list_add(&vd->vdev_ms_list, arg, txg);
1167 (void) txg_list_add(&vd->vdev_dtl_list, arg, txg);
1488 uint64_t txg; local
1555 uint64_t txg; local
1607 uint64_t txg; local
1666 uint64_t txg; local
1866 uint64_t txg = zio->io_txg; local
    [all...]
zil.c 45 * either the DMU transaction group (txg) commits them to the stable pool
210 zil_parse_lr_func_t *parse_lr_func, void *arg, uint64_t txg)
247 parse_blk_func(zilog, &blk, arg, txg);
265 parse_lr_func(zilog, lr, arg, txg);
332 uint64_t txg = 0; local
354 txg = dmu_tx_get_txg(tx);
357 NULL, txg);
373 lwb->lwb_max_txg = txg;
388 txg_wait_synced(zilog->zl_dmu_pool, txg);
409 uint64_t txg; local
472 uint64_t txg; local
673 uint64_t txg; local
776 uint64_t txg = lrc->lrc_txg; local
951 uint64_t txg; local
1116 uint64_t txg = dmu_tx_get_txg(tx); local
1286 uint64_t txg; local
    [all...]
dsl_synctask.c 81 uint64_t txg; local
88 txg = dmu_tx_get_txg(tx);
115 VERIFY(0 == txg_list_add(&dstg->dstg_pool->dp_sync_tasks, dstg, txg));
119 txg_wait_synced(dstg->dstg_pool, txg);
130 uint64_t txg; local
133 txg = dmu_tx_get_txg(tx);
134 VERIFY(0 == txg_list_add(&dstg->dstg_pool->dp_sync_tasks, dstg, txg));
spa_config.c 373 spa_config_generate(spa_t *spa, vdev_t *vd, uint64_t txg, int getstats)
386 * If txg is -1, report the current value of spa->spa_config_txg.
388 if (txg == -1ULL)
389 txg = spa->spa_config_txg;
400 txg) == 0);
440 uint64_t txg; local
446 txg = spa_last_synced_txg(spa) + 1;
460 vdev_init(tvd, txg);
470 txg_wait_synced(spa->spa_dsl_pool, txg);
spa.c 48 #include <sys/txg.h>
1887 uint64_t txg = TXG_INITIAL; local
2393 uint64_t txg; local
2502 uint64_t txg, open_txg; local
2683 uint64_t txg; local
3127 uint64_t txg; local
3629 uint64_t txg; local
    [all...]
vdev_label.c 124 * txg Transaction group in which this label was written
364 uint64_t state, pool_guid, device_guid, txg, spare_pool; local
394 &txg) != 0)) {
420 txg == 0 && vdtxg == crtxg)
566 * We mark it as being from txg 0 to indicate that it's not
568 * be written again with a meaningful txg by spa_sync().
696 * Consider the following situation: txg is safely synced to disk. We've
697 * written the first uberblock for txg + 1, and then we lose power. When we
698 * come back up, we fail to see the uberblock for txg + 1 because, say,
699 * it was on a mirrored device and the replica to which we wrote txg +
    [all...]
zio.c 31 #include <sys/txg.h>
334 zio_create(zio_t *pio, spa_t *spa, uint64_t txg, blkptr_t *bp,
347 zio->io_txg = txg;
487 uint64_t txg, blkptr_t *bp, void *data, uint64_t size,
501 zio = zio_create(pio, spa, txg, bp, data, size, done, private,
515 if (bp->blk_birth != txg) {
531 uint64_t txg, blkptr_t *bp, void *data, uint64_t size,
537 zio = zio_create(pio, spa, txg, bp, data, size, done, private,
563 uint64_t txg, blkptr_t *bp, void *data, uint64_t size,
573 zio = zio_create(pio, spa, txg, bp, data, size, done, private
625 ASSERT3U(spa_first_txg(spa), <=, txg); local
1538 uint64_t txg = zio->io_txg; local
    [all...]
dmu_object.c 149 dmu_object_next(objset_t *os, uint64_t *objectp, boolean_t hole, uint64_t txg)
155 hole, &offset, 0, DNODES_PER_BLOCK, txg);
dmu.c 674 * EEXIST: this txg has already been synced, so there's nothing to to.
691 blkptr_t *bp, uint64_t txg, dmu_sync_cb_t *done, void *arg)
705 ASSERT(txg != 0);
708 dprintf("dmu_sync txg=%llu, s,o,q %llu %llu %llu\n",
709 txg, tx->tx_synced_txg, tx->tx_open_txg, tx->tx_quiesced_txg);
717 * If this txg already synced, there's nothing to do.
719 if (txg <= tx->tx_synced_txg) {
724 if (txg > spa_freeze_txg(dp->dp_spa)) {
735 if (txg == tx->tx_syncing_txg) {
754 (db->db_blkptr && db->db_blkptr->blk_birth == txg));
    [all...]

Completed in 240 milliseconds

1 2 3