Lines Matching refs:cvd
300 vdev_add_child(vdev_t *pvd, vdev_t *cvd) in vdev_add_child() argument
303 uint64_t id = cvd->vdev_id; in vdev_add_child()
305 spa_t *spa = cvd->vdev_spa; in vdev_add_child()
308 ASSERT(cvd->vdev_parent == NULL); in vdev_add_child()
310 cvd->vdev_parent = pvd; in vdev_add_child()
328 pvd->vdev_child[id] = cvd; in vdev_add_child()
330 cvd->vdev_top = (pvd->vdev_top ? pvd->vdev_top: cvd); in vdev_add_child()
331 ASSERT(cvd->vdev_top->vdev_parent->vdev_parent == NULL); in vdev_add_child()
337 pvd->vdev_guid_sum += cvd->vdev_guid_sum; in vdev_add_child()
341 vdev_remove_child(vdev_t *pvd, vdev_t *cvd) in vdev_remove_child() argument
344 uint_t id = cvd->vdev_id; in vdev_remove_child()
346 ASSERT(cvd->vdev_parent == pvd); in vdev_remove_child()
352 ASSERT(pvd->vdev_child[id] == cvd); in vdev_remove_child()
355 cvd->vdev_parent = NULL; in vdev_remove_child()
371 pvd->vdev_guid_sum -= cvd->vdev_guid_sum; in vdev_remove_child()
380 vdev_t **newchild, *cvd; in vdev_compact_children() local
393 if ((cvd = pvd->vdev_child[c]) != NULL) { in vdev_compact_children()
394 newchild[newc] = cvd; in vdev_compact_children()
395 cvd->vdev_id = newc++; in vdev_compact_children()
872 vdev_add_parent(vdev_t *cvd, vdev_ops_t *ops) in vdev_add_parent() argument
874 spa_t *spa = cvd->vdev_spa; in vdev_add_parent()
875 vdev_t *pvd = cvd->vdev_parent; in vdev_add_parent()
880 mvd = vdev_alloc_common(spa, cvd->vdev_id, 0, ops); in vdev_add_parent()
882 mvd->vdev_asize = cvd->vdev_asize; in vdev_add_parent()
883 mvd->vdev_min_asize = cvd->vdev_min_asize; in vdev_add_parent()
884 mvd->vdev_max_asize = cvd->vdev_max_asize; in vdev_add_parent()
885 mvd->vdev_ashift = cvd->vdev_ashift; in vdev_add_parent()
886 mvd->vdev_logical_ashift = cvd->vdev_logical_ashift; in vdev_add_parent()
887 mvd->vdev_physical_ashift = cvd->vdev_physical_ashift; in vdev_add_parent()
888 mvd->vdev_state = cvd->vdev_state; in vdev_add_parent()
889 mvd->vdev_crtxg = cvd->vdev_crtxg; in vdev_add_parent()
891 vdev_remove_child(pvd, cvd); in vdev_add_parent()
893 cvd->vdev_id = mvd->vdev_children; in vdev_add_parent()
894 vdev_add_child(mvd, cvd); in vdev_add_parent()
895 vdev_top_update(cvd->vdev_top, cvd->vdev_top); in vdev_add_parent()
898 vdev_top_transfer(cvd, mvd); in vdev_add_parent()
907 vdev_remove_parent(vdev_t *cvd) in vdev_remove_parent() argument
909 vdev_t *mvd = cvd->vdev_parent; in vdev_remove_parent()
912 ASSERT(spa_config_held(cvd->vdev_spa, SCL_ALL, RW_WRITER) == SCL_ALL); in vdev_remove_parent()
918 cvd->vdev_ashift = mvd->vdev_ashift; in vdev_remove_parent()
919 cvd->vdev_logical_ashift = mvd->vdev_logical_ashift; in vdev_remove_parent()
920 cvd->vdev_physical_ashift = mvd->vdev_physical_ashift; in vdev_remove_parent()
922 vdev_remove_child(mvd, cvd); in vdev_remove_parent()
932 uint64_t guid_delta = mvd->vdev_guid - cvd->vdev_guid; in vdev_remove_parent()
933 cvd->vdev_orig_guid = cvd->vdev_guid; in vdev_remove_parent()
934 cvd->vdev_guid += guid_delta; in vdev_remove_parent()
935 cvd->vdev_guid_sum += guid_delta; in vdev_remove_parent()
937 cvd->vdev_id = mvd->vdev_id; in vdev_remove_parent()
938 vdev_add_child(pvd, cvd); in vdev_remove_parent()
939 vdev_top_update(cvd->vdev_top, cvd->vdev_top); in vdev_remove_parent()
941 if (cvd == cvd->vdev_top) in vdev_remove_parent()
942 vdev_top_transfer(mvd, cvd); in vdev_remove_parent()
2051 vdev_t *cvd = vd->vdev_child[c]; in vdev_dtl_reassess() local
2052 mutex_enter(&cvd->vdev_dtl_lock); in vdev_dtl_reassess()
2053 space_reftree_add_map(&reftree, cvd->vdev_dtl[s], 1); in vdev_dtl_reassess()
2054 mutex_exit(&cvd->vdev_dtl_lock); in vdev_dtl_reassess()
2288 vdev_t *cvd = vd->vdev_child[c]; in vdev_resilver_needed() local
2291 if (vdev_resilver_needed(cvd, &cmin, &cmax)) { in vdev_resilver_needed()
2929 vdev_t *cvd = rvd->vdev_child[c]; in vdev_get_stats() local
2930 vdev_stat_t *cvs = &cvd->vdev_stat; in vdev_get_stats()
2936 cvs->vs_scan_removing = cvd->vdev_removing; in vdev_get_stats()
3577 vdev_t *cvd, *pvd = vd->vdev_parent; in vdev_split() local
3582 cvd = pvd->vdev_child[0]; in vdev_split()
3584 vdev_remove_parent(cvd); in vdev_split()
3585 cvd->vdev_splitting = B_TRUE; in vdev_split()
3587 vdev_propagate_state(cvd); in vdev_split()
3594 vdev_t *cvd = vd->vdev_child[c]; in vdev_deadman() local
3596 vdev_deadman(cvd); in vdev_deadman()