135 uint64_t vdev_guid_sum; /* self guid + all child guids */
136 uint64_t vdev_orig_guid; /* orig. guid prior to remove */
137 uint64_t vdev_asize; /* allocatable device capacity */
138 uint64_t vdev_min_asize; /* min acceptable asize */
139 uint64_t vdev_max_asize; /* max acceptable asize */
140 uint64_t vdev_ashift; /* block alignment shift */
141 uint64_t vdev_state; /* see VDEV_STATE_* #defines */
142 uint64_t vdev_prevstate; /* used when reopening a vdev */
143 vdev_ops_t *vdev_ops; /* vdev operations */
144 spa_t *vdev_spa; /* spa for this vdev */
145 void *vdev_tsd; /* type-specific data */
146 vnode_t *vdev_name_vp; /* vnode for pathname */
147 vnode_t *vdev_devid_vp; /* vnode for devid */
148 vdev_t *vdev_top; /* top-level vdev */
149 vdev_t *vdev_parent; /* parent vdev */
150 vdev_t **vdev_child; /* array of children */
151 uint64_t vdev_children; /* number of children */
152 vdev_stat_t vdev_stat; /* virtual device statistics */
153 boolean_t vdev_expanding; /* expand the vdev? */
154 boolean_t vdev_reopening; /* reopen in progress? */
155 int vdev_open_error; /* error on last open */
156 kthread_t *vdev_open_thread; /* thread opening children */
157 uint64_t vdev_crtxg; /* txg when top-level was added */
158
159 /*
160 * Top-level vdev state.
161 */
162 uint64_t vdev_ms_array; /* metaslab array object */
163 uint64_t vdev_ms_shift; /* metaslab size shift */
164 uint64_t vdev_ms_count; /* number of metaslabs */
165 metaslab_group_t *vdev_mg; /* metaslab group */
166 metaslab_t **vdev_ms; /* metaslab array */
167 txg_list_t vdev_ms_list; /* per-txg dirty metaslab lists */
168 txg_list_t vdev_dtl_list; /* per-txg dirty DTL lists */
169 txg_node_t vdev_txg_node; /* per-txg dirty vdev linkage */
170 boolean_t vdev_remove_wanted; /* async remove wanted? */
171 boolean_t vdev_probe_wanted; /* async probe wanted? */
172 list_node_t vdev_config_dirty_node; /* config dirty list */
173 list_node_t vdev_state_dirty_node; /* state dirty list */
174 uint64_t vdev_deflate_ratio; /* deflation ratio (x512) */
|
135 uint64_t vdev_guid_sum; /* self guid + all child guids */
136 uint64_t vdev_orig_guid; /* orig. guid prior to remove */
137 uint64_t vdev_asize; /* allocatable device capacity */
138 uint64_t vdev_min_asize; /* min acceptable asize */
139 uint64_t vdev_max_asize; /* max acceptable asize */
140 uint64_t vdev_ashift; /* block alignment shift */
141 uint64_t vdev_state; /* see VDEV_STATE_* #defines */
142 uint64_t vdev_prevstate; /* used when reopening a vdev */
143 vdev_ops_t *vdev_ops; /* vdev operations */
144 spa_t *vdev_spa; /* spa for this vdev */
145 void *vdev_tsd; /* type-specific data */
146 vnode_t *vdev_name_vp; /* vnode for pathname */
147 vnode_t *vdev_devid_vp; /* vnode for devid */
148 vdev_t *vdev_top; /* top-level vdev */
149 vdev_t *vdev_parent; /* parent vdev */
150 vdev_t **vdev_child; /* array of children */
151 uint64_t vdev_children; /* number of children */
152 vdev_stat_t vdev_stat; /* virtual device statistics */
153 boolean_t vdev_expanding; /* expand the vdev? */
154 boolean_t vdev_reopening; /* reopen in progress? */
155 boolean_t vdev_nonrot; /* true if SSD, file, or Virtio */
156 int vdev_open_error; /* error on last open */
157 kthread_t *vdev_open_thread; /* thread opening children */
158 uint64_t vdev_crtxg; /* txg when top-level was added */
159
160 /*
161 * Top-level vdev state.
162 */
163 uint64_t vdev_ms_array; /* metaslab array object */
164 uint64_t vdev_ms_shift; /* metaslab size shift */
165 uint64_t vdev_ms_count; /* number of metaslabs */
166 metaslab_group_t *vdev_mg; /* metaslab group */
167 metaslab_t **vdev_ms; /* metaslab array */
168 txg_list_t vdev_ms_list; /* per-txg dirty metaslab lists */
169 txg_list_t vdev_dtl_list; /* per-txg dirty DTL lists */
170 txg_node_t vdev_txg_node; /* per-txg dirty vdev linkage */
171 boolean_t vdev_remove_wanted; /* async remove wanted? */
172 boolean_t vdev_probe_wanted; /* async probe wanted? */
173 list_node_t vdev_config_dirty_node; /* config dirty list */
174 list_node_t vdev_state_dirty_node; /* state dirty list */
175 uint64_t vdev_deflate_ratio; /* deflation ratio (x512) */
|