usr/src/uts/common/fs/zfs/metaslab.c
changeset 11026 e8e10df16a8f
parent 10974 32d689ba6466
child 11066 cebb50cbe4f9
equal deleted inserted replaced
11025:96e66bda9446 11026:e8e10df16a8f
   194 void
   194 void
   195 metaslab_group_destroy(metaslab_group_t *mg)
   195 metaslab_group_destroy(metaslab_group_t *mg)
   196 {
   196 {
   197 	ASSERT(mg->mg_prev == NULL);
   197 	ASSERT(mg->mg_prev == NULL);
   198 	ASSERT(mg->mg_next == NULL);
   198 	ASSERT(mg->mg_next == NULL);
   199 	ASSERT(mg->mg_activation_count + mg->mg_vd->vdev_removing == 0);
   199 	/*
       
   200 	 * We may have gone below zero with the activation count
       
   201 	 * either because we never activated in the first place or
       
   202 	 * because we're done, and possibly removing the vdev.
       
   203 	 */
       
   204 	ASSERT(mg->mg_activation_count <= 0);
   200 
   205 
   201 	avl_destroy(&mg->mg_metaslab_tree);
   206 	avl_destroy(&mg->mg_metaslab_tree);
   202 	mutex_destroy(&mg->mg_lock);
   207 	mutex_destroy(&mg->mg_lock);
   203 	kmem_free(mg, sizeof (metaslab_group_t));
   208 	kmem_free(mg, sizeof (metaslab_group_t));
   204 }
   209 }