Lines Matching refs:cvd

528 vdev_add_child(vdev_t *pvd, vdev_t *cvd)  in vdev_add_child()  argument
531 uint64_t id = cvd->vdev_id; in vdev_add_child()
534 ASSERT(spa_config_held(cvd->vdev_spa, SCL_ALL, RW_WRITER) == SCL_ALL); in vdev_add_child()
535 ASSERT(cvd->vdev_parent == NULL); in vdev_add_child()
537 cvd->vdev_parent = pvd; in vdev_add_child()
555 pvd->vdev_child[id] = cvd; in vdev_add_child()
557 cvd->vdev_top = (pvd->vdev_top ? pvd->vdev_top: cvd); in vdev_add_child()
558 ASSERT(cvd->vdev_top->vdev_parent->vdev_parent == NULL); in vdev_add_child()
564 pvd->vdev_guid_sum += cvd->vdev_guid_sum; in vdev_add_child()
566 if (cvd->vdev_ops->vdev_op_leaf) { in vdev_add_child()
567 list_insert_head(&cvd->vdev_spa->spa_leaf_list, cvd); in vdev_add_child()
568 cvd->vdev_spa->spa_leaf_list_gen++; in vdev_add_child()
573 vdev_remove_child(vdev_t *pvd, vdev_t *cvd) in vdev_remove_child() argument
576 uint_t id = cvd->vdev_id; in vdev_remove_child()
578 ASSERT(cvd->vdev_parent == pvd); in vdev_remove_child()
584 ASSERT(pvd->vdev_child[id] == cvd); in vdev_remove_child()
587 cvd->vdev_parent = NULL; in vdev_remove_child()
599 if (cvd->vdev_ops->vdev_op_leaf) { in vdev_remove_child()
600 spa_t *spa = cvd->vdev_spa; in vdev_remove_child()
601 list_remove(&spa->spa_leaf_list, cvd); in vdev_remove_child()
609 pvd->vdev_guid_sum -= cvd->vdev_guid_sum; in vdev_remove_child()
618 vdev_t **newchild, *cvd; in vdev_compact_children() local
635 if ((cvd = pvd->vdev_child[c]) != NULL) { in vdev_compact_children()
636 newchild[newc] = cvd; in vdev_compact_children()
637 cvd->vdev_id = newc++; in vdev_compact_children()
1358 vdev_add_parent(vdev_t *cvd, vdev_ops_t *ops) in vdev_add_parent() argument
1360 spa_t *spa = cvd->vdev_spa; in vdev_add_parent()
1361 vdev_t *pvd = cvd->vdev_parent; in vdev_add_parent()
1366 mvd = vdev_alloc_common(spa, cvd->vdev_id, 0, ops); in vdev_add_parent()
1368 mvd->vdev_asize = cvd->vdev_asize; in vdev_add_parent()
1369 mvd->vdev_min_asize = cvd->vdev_min_asize; in vdev_add_parent()
1370 mvd->vdev_max_asize = cvd->vdev_max_asize; in vdev_add_parent()
1371 mvd->vdev_psize = cvd->vdev_psize; in vdev_add_parent()
1372 mvd->vdev_ashift = cvd->vdev_ashift; in vdev_add_parent()
1373 mvd->vdev_logical_ashift = cvd->vdev_logical_ashift; in vdev_add_parent()
1374 mvd->vdev_physical_ashift = cvd->vdev_physical_ashift; in vdev_add_parent()
1375 mvd->vdev_state = cvd->vdev_state; in vdev_add_parent()
1376 mvd->vdev_crtxg = cvd->vdev_crtxg; in vdev_add_parent()
1378 vdev_remove_child(pvd, cvd); in vdev_add_parent()
1380 cvd->vdev_id = mvd->vdev_children; in vdev_add_parent()
1381 vdev_add_child(mvd, cvd); in vdev_add_parent()
1382 vdev_top_update(cvd->vdev_top, cvd->vdev_top); in vdev_add_parent()
1385 vdev_top_transfer(cvd, mvd); in vdev_add_parent()
1394 vdev_remove_parent(vdev_t *cvd) in vdev_remove_parent() argument
1396 vdev_t *mvd = cvd->vdev_parent; in vdev_remove_parent()
1399 ASSERT(spa_config_held(cvd->vdev_spa, SCL_ALL, RW_WRITER) == SCL_ALL); in vdev_remove_parent()
1405 cvd->vdev_ashift = mvd->vdev_ashift; in vdev_remove_parent()
1406 cvd->vdev_logical_ashift = mvd->vdev_logical_ashift; in vdev_remove_parent()
1407 cvd->vdev_physical_ashift = mvd->vdev_physical_ashift; in vdev_remove_parent()
1408 vdev_remove_child(mvd, cvd); in vdev_remove_parent()
1418 uint64_t guid_delta = mvd->vdev_guid - cvd->vdev_guid; in vdev_remove_parent()
1419 cvd->vdev_orig_guid = cvd->vdev_guid; in vdev_remove_parent()
1420 cvd->vdev_guid += guid_delta; in vdev_remove_parent()
1421 cvd->vdev_guid_sum += guid_delta; in vdev_remove_parent()
1431 if (!cvd->vdev_spa->spa_autoexpand) in vdev_remove_parent()
1432 cvd->vdev_asize = mvd->vdev_asize; in vdev_remove_parent()
1434 cvd->vdev_id = mvd->vdev_id; in vdev_remove_parent()
1435 vdev_add_child(pvd, cvd); in vdev_remove_parent()
1436 vdev_top_update(cvd->vdev_top, cvd->vdev_top); in vdev_remove_parent()
1438 if (cvd == cvd->vdev_top) in vdev_remove_parent()
1439 vdev_top_transfer(mvd, cvd); in vdev_remove_parent()
1943 vdev_t *cvd = vd->vdev_child[c]; in vdev_open_children_impl() local
1945 if (open_func(cvd) == B_FALSE) in vdev_open_children_impl()
1949 cvd->vdev_open_error = vdev_open(cvd); in vdev_open_children_impl()
1952 cvd, TQ_SLEEP) != TASKQID_INVALID); in vdev_open_children_impl()
1959 vdev_t *cvd = vd->vdev_child[c]; in vdev_open_children_impl() local
1960 vd->vdev_nonrot &= cvd->vdev_nonrot; in vdev_open_children_impl()
2374 vdev_t *cvd = vd->vdev_child[c]; in vdev_validate() local
2376 if (tq == NULL || vdev_uses_zvols(cvd)) { in vdev_validate()
2377 vdev_validate_child(cvd); in vdev_validate()
2379 VERIFY(taskq_dispatch(tq, vdev_validate_child, cvd, in vdev_validate()
3354 vdev_t *cvd = vd->vdev_child[c]; in vdev_dtl_reassess_impl() local
3355 mutex_enter(&cvd->vdev_dtl_lock); in vdev_dtl_reassess_impl()
3357 cvd->vdev_dtl[s], 1); in vdev_dtl_reassess_impl()
3358 mutex_exit(&cvd->vdev_dtl_lock); in vdev_dtl_reassess_impl()
3669 vdev_t *cvd = vd->vdev_child[c]; in vdev_resilver_needed() local
3672 if (vdev_resilver_needed(cvd, &cmin, &cmax)) { in vdev_resilver_needed()
3733 vdev_t *cvd = vd->vdev_child[c]; in vdev_load() local
3735 if (tq == NULL || vdev_uses_zvols(cvd)) { in vdev_load()
3736 cvd->vdev_load_error = vdev_load(cvd); in vdev_load()
3739 cvd, TQ_SLEEP) != TASKQID_INVALID); in vdev_load()
4689 vdev_get_child_stat(vdev_t *cvd, vdev_stat_t *vs, vdev_stat_t *cvs) in vdev_get_child_stat() argument
4695 if (cvd->vdev_ops == &vdev_draid_spare_ops) in vdev_get_child_stat()
4703 cvs->vs_scan_removing = cvd->vdev_removing; in vdev_get_child_stat()
4710 vdev_get_child_stat_ex(vdev_t *cvd, vdev_stat_ex_t *vsx, vdev_stat_ex_t *cvsx) in vdev_get_child_stat_ex() argument
4712 (void) cvd; in vdev_get_child_stat_ex()
4783 vdev_t *cvd = vd->vdev_child[c]; in vdev_get_stats_ex_impl() local
4784 vdev_stat_t *cvs = &cvd->vdev_stat; in vdev_get_stats_ex_impl()
4785 vdev_stat_ex_t *cvsx = &cvd->vdev_stat_ex; in vdev_get_stats_ex_impl()
4787 vdev_get_stats_ex_impl(cvd, cvs, cvsx); in vdev_get_stats_ex_impl()
4789 vdev_get_child_stat(cvd, vs, cvs); in vdev_get_stats_ex_impl()
4791 vdev_get_child_stat_ex(cvd, vsx, cvsx); in vdev_get_stats_ex_impl()
5635 vdev_t *cvd, *pvd = vd->vdev_parent; in vdev_split() local
5644 cvd = pvd->vdev_child[0]; in vdev_split()
5646 vdev_remove_parent(cvd); in vdev_split()
5647 cvd->vdev_splitting = B_TRUE; in vdev_split()
5649 vdev_propagate_state(cvd); in vdev_split()
5656 vdev_t *cvd = vd->vdev_child[c]; in vdev_deadman() local
5658 vdev_deadman(cvd, tag); in vdev_deadman()
5708 vdev_t *cvd = vd->vdev_child[c]; in vdev_clear_resilver_deferred() local
5709 resilver_needed |= vdev_clear_resilver_deferred(cvd, tx); in vdev_clear_resilver_deferred()