Update core ZFS code from build 121 to build 141.
[zfs.git] / module / zfs / include / sys / txg_impl.h
index 7413c66..7b356ea 100644 (file)
@@ -19,7 +19,7 @@
  * CDDL HEADER END
  */
 /*
- * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
  * Use is subject to license terms.
  */
 
@@ -37,13 +37,13 @@ struct tx_cpu {
        kmutex_t        tc_lock;
        kcondvar_t      tc_cv[TXG_SIZE];
        uint64_t        tc_count[TXG_SIZE];
+       list_t          tc_callbacks[TXG_SIZE]; /* commit cb list */
        char            tc_pad[16];
 };
 
 typedef struct tx_state {
        tx_cpu_t        *tx_cpu;        /* protects right to enter txg  */
        kmutex_t        tx_sync_lock;   /* protects tx_state_t */
-       krwlock_t       tx_suspend;
        uint64_t        tx_open_txg;    /* currently open txg id */
        uint64_t        tx_quiesced_txg; /* quiesced txg waiting for sync */
        uint64_t        tx_syncing_txg; /* currently syncing txg id */
@@ -64,6 +64,8 @@ typedef struct tx_state {
 
        kthread_t       *tx_sync_thread;
        kthread_t       *tx_quiesce_thread;
+
+       taskq_t         *tx_commit_cb_taskq; /* commit callback taskq */
 } tx_state_t;
 
 #ifdef __cplusplus