Update core ZFS code from build 121 to build 141.
[zfs.git] / module / zfs / include / sys / metaslab_impl.h
index d67dea7..07988dd 100644 (file)
@@ -37,16 +37,23 @@ extern "C" {
 #endif
 
 struct metaslab_class {
+       spa_t                   *mc_spa;
        metaslab_group_t        *mc_rotor;
-       uint64_t                mc_allocated;
        space_map_ops_t         *mc_ops;
+       uint64_t                mc_aliquot;
+       uint64_t                mc_alloc;       /* total allocated space */
+       uint64_t                mc_deferred;    /* total deferred frees */
+       uint64_t                mc_space;       /* total space (alloc + free) */
+       uint64_t                mc_dspace;      /* total deflated space */
 };
 
 struct metaslab_group {
        kmutex_t                mg_lock;
        avl_tree_t              mg_metaslab_tree;
        uint64_t                mg_aliquot;
+       uint64_t                mg_bonus_area;
        int64_t                 mg_bias;
+       int64_t                 mg_activation_count;
        metaslab_class_t        *mg_class;
        vdev_t                  *mg_vd;
        metaslab_group_t        *mg_prev;
@@ -66,7 +73,9 @@ struct metaslab {
        space_map_obj_t ms_smo_syncing; /* syncing space map object     */
        space_map_t     ms_allocmap[TXG_SIZE];  /* allocated this txg   */
        space_map_t     ms_freemap[TXG_SIZE];   /* freed this txg       */
+       space_map_t     ms_defermap[TXG_DEFER_SIZE]; /* deferred frees  */
        space_map_t     ms_map;         /* in-core free space map       */
+       int64_t         ms_deferspace;  /* sum of ms_defermap[] space   */
        uint64_t        ms_weight;      /* weight vs. others in group   */
        metaslab_group_t *ms_group;     /* metaslab group               */
        avl_node_t      ms_group_node;  /* node in metaslab group tree  */