diff options
Diffstat (limited to 'include/sys/dmu_tx.h')
-rw-r--r-- | include/sys/dmu_tx.h | 23 |
1 files changed, 5 insertions, 18 deletions
diff --git a/include/sys/dmu_tx.h b/include/sys/dmu_tx.h index 1ee513fdc..f16e1e858 100644 --- a/include/sys/dmu_tx.h +++ b/include/sys/dmu_tx.h @@ -23,7 +23,7 @@ * Use is subject to license terms. */ /* - * Copyright (c) 2012, 2015 by Delphix. All rights reserved. + * Copyright (c) 2012, 2016 by Delphix. All rights reserved. */ #ifndef _SYS_DMU_TX_H @@ -70,6 +70,9 @@ struct dmu_tx { /* has this transaction already been delayed? */ boolean_t tx_waited; + /* transaction is marked as being a "net free" of space */ + boolean_t tx_netfree; + /* time this transaction was created */ hrtime_t tx_start; @@ -77,14 +80,6 @@ struct dmu_tx { boolean_t tx_wait_dirty; int tx_err; -#ifdef DEBUG_DMU_TX - uint64_t tx_space_towrite; - uint64_t tx_space_tofree; - uint64_t tx_space_tooverwrite; - uint64_t tx_space_tounref; - refcount_t tx_space_written; - refcount_t tx_space_freed; -#endif }; enum dmu_tx_hold_type { @@ -103,16 +98,10 @@ typedef struct dmu_tx_hold { list_node_t txh_node; struct dnode *txh_dnode; refcount_t txh_space_towrite; - refcount_t txh_space_tofree; - refcount_t txh_space_tooverwrite; - refcount_t txh_space_tounref; refcount_t txh_memory_tohold; - refcount_t txh_fudge; -#ifdef DEBUG_DMU_TX enum dmu_tx_hold_type txh_type; uint64_t txh_arg1; uint64_t txh_arg2; -#endif } dmu_tx_hold_t; typedef struct dmu_tx_callback { @@ -172,12 +161,10 @@ dmu_tx_t *dmu_tx_create_dd(dsl_dir_t *dd); int dmu_tx_is_syncing(dmu_tx_t *tx); int dmu_tx_private_ok(dmu_tx_t *tx); void dmu_tx_add_new_object(dmu_tx_t *tx, dnode_t *dn); -void dmu_tx_willuse_space(dmu_tx_t *tx, int64_t delta); void dmu_tx_dirty_buf(dmu_tx_t *tx, struct dmu_buf_impl *db); -int dmu_tx_holds(dmu_tx_t *tx, uint64_t object); void dmu_tx_hold_space(dmu_tx_t *tx, uint64_t space); -#ifdef DEBUG_DMU_TX +#ifdef ZFS_DEBUG #define DMU_TX_DIRTY_BUF(tx, db) dmu_tx_dirty_buf(tx, db) #else #define DMU_TX_DIRTY_BUF(tx, db) |