Lines Matching defs:shs

91 seths_create_hsp(set_hs_params_t *shs)
98 setno = HSP_SET(shs->shs_hot_spare_pool);
101 hsp = find_hot_spare_pool(setno, shs->shs_hot_spare_pool);
109 if (shs->shs_options & MD_CRO_64BIT) {
111 return (mdhsperror(&shs->mde, MDE_HSP_UNIT_TOO_LARGE,
112 shs->shs_hot_spare_pool));
125 return (mdhsperror(&shs->mde, MDE_HSP_CREATE_FAILURE,
126 shs->shs_hot_spare_pool));
133 hsp->hsp_self_id = shs->shs_hot_spare_pool;
158 seths_add(set_hs_params_t *shs)
179 if (shs->shs_options & HS_OPT_DRYRUN) {
184 if (shs->shs_options & HS_OPT_POOL) {
185 return (seths_create_hsp(shs));
188 setno = HSP_SET(shs->shs_hot_spare_pool);
195 if (hs->hs_devnum == shs->shs_component_old) {
212 shs->shs_component_old, &key_old, &num_keys_old) != 0) {
213 return (mddeverror(&shs->mde, MDE_NAME_SPACE,
214 shs->shs_component_old));
223 return (mddeverror(&shs->mde, MDE_MULTNM,
224 shs->shs_component_old));
231 return (mddeverror(&shs->mde, MDE_INVAL_HS,
232 shs->shs_component_old));
250 if (shs->shs_size_option & MD_CRO_64BIT) {
252 return (mdhserror(&shs->mde, MDE_HS_UNIT_TOO_LARGE,
253 shs->shs_hot_spare_pool, shs->shs_component_old));
264 return (mdhserror(&shs->mde, MDE_HS_CREATE_FAILURE,
265 shs->shs_hot_spare_pool,
266 shs->shs_component_old));
275 hs->hs_devnum = shs->shs_component_old;
276 hs->hs_key = shs->shs_key_old;
277 hs->hs_start_blk = shs->shs_start_blk;
278 hs->hs_has_label = shs->shs_has_label;
279 hs->hs_number_blks = shs->shs_number_blks;
290 if (hsp->hsp_self_id == shs->shs_hot_spare_pool) {
304 return (mdhsperror(&shs->mde, MDE_HSP_CREATE_FAILURE,
305 shs->shs_hot_spare_pool));
312 hsp->hsp_self_id = shs->shs_hot_spare_pool;
336 return (mdhserror(&shs->mde, MDE_HS_INUSE,
337 shs->shs_hot_spare_pool,
362 return (mdhsperror(&shs->mde, MDE_HSP_CREATE_FAILURE,
396 if (shs->shs_size_option & MD_CRO_64BIT) {
449 seths_delete_hsp(set_hs_params_t *shs)
457 setno = HSP_SET(shs->shs_hot_spare_pool);
463 if (hsp->hsp_self_id == shs->shs_hot_spare_pool) {
471 return (mdhsperror(&shs->mde, MDE_INVAL_HSP,
472 shs->shs_hot_spare_pool));
476 return (mdhsperror(&shs->mde, MDE_HSP_BUSY,
477 shs->shs_hot_spare_pool));
481 return (mdhsperror(&shs->mde, MDE_HSP_REF,
482 shs->shs_hot_spare_pool));
486 if (shs->shs_options & HS_OPT_DRYRUN) {
513 seths_delete(set_hs_params_t *shs)
527 if (shs->shs_options & HS_OPT_POOL) {
528 return (seths_delete_hsp(shs));
531 setno = HSP_SET(shs->shs_hot_spare_pool);
537 if (hs->hs_devnum == shs->shs_component_old) {
556 shs->shs_component_old, &key_old, &num_keys_old) != 0) {
557 return (mddeverror(&shs->mde, MDE_NAME_SPACE,
558 shs->shs_component_old));
567 return (mddeverror(&shs->mde, MDE_MULTNM,
568 shs->shs_component_old));
575 return (mddeverror(&shs->mde, MDE_INVAL_HS,
576 shs->shs_component_old));
595 return (mddeverror(&shs->mde, MDE_INVAL_HS,
596 shs->shs_component_old));
600 hsp = find_hot_spare_pool(setno, shs->shs_hot_spare_pool);
602 return (mdhsperror(&shs->mde, MDE_INVAL_HSP,
603 shs->shs_hot_spare_pool));
607 if (((shs->shs_options & HS_OPT_FORCE) == 0) &&
609 return (mdhserror(&shs->mde, MDE_HS_RESVD,
610 shs->shs_hot_spare_pool, shs->shs_component_old));
614 return (mdhserror(&shs->mde, MDE_HS_RESVD,
615 shs->shs_hot_spare_pool, shs->shs_component_old));
628 return (mddeverror(&shs->mde, MDE_INVAL_HS,
633 if (shs->shs_options & HS_OPT_DRYRUN) {
689 seths_replace(set_hs_params_t *shs)
706 setno = HSP_SET(shs->shs_hot_spare_pool);
714 if (hs->hs_devnum == shs->shs_component_old) {
733 shs->shs_component_old, &key_old, &num_keys_old) != 0) {
734 return (mddeverror(&shs->mde, MDE_NAME_SPACE,
735 shs->shs_component_old));
743 return (mddeverror(&shs->mde, MDE_MULTNM,
744 shs->shs_component_old));
751 return (mddeverror(&shs->mde, MDE_INVAL_HS,
752 shs->shs_component_old));
771 return (mddeverror(&shs->mde, MDE_INVAL_HS,
772 shs->shs_component_old));
776 if (((shs->shs_options & HS_OPT_FORCE) == 0) &&
778 return (mdhserror(&shs->mde, MDE_HS_RESVD,
779 shs->shs_hot_spare_pool,
784 hsp = find_hot_spare_pool(setno, shs->shs_hot_spare_pool);
786 return (mdhsperror(&shs->mde, MDE_INVAL_HSP,
787 shs->shs_hot_spare_pool));
799 return (mddeverror(&shs->mde, MDE_INVAL_HS,
807 if (new_hs->hs_devnum == shs->shs_component_new) {
822 return (mdhserror(&shs->mde, MDE_HS_INUSE,
823 shs->shs_hot_spare_pool,
829 if (shs->shs_options & HS_OPT_DRYRUN) {
838 if (shs->shs_size_option & MD_CRO_64BIT) {
840 return (mdhserror(&shs->mde, MDE_HS_UNIT_TOO_LARGE,
841 shs->shs_hot_spare_pool, shs->shs_component_new));
852 return (mdhserror(&shs->mde, MDE_HS_CREATE_FAILURE,
853 shs->shs_hot_spare_pool,
854 shs->shs_component_new));
862 new_hs->hs_devnum = shs->shs_component_new;
863 new_hs->hs_key = shs->shs_key_new;
864 new_hs->hs_start_blk = shs->shs_start_blk;
865 new_hs->hs_has_label = shs->shs_has_label;
866 new_hs->hs_number_blks = shs->shs_number_blks;
916 if (shs->shs_size_option & MD_CRO_64BIT) {
936 seths_enable(set_hs_params_t *shs)
940 set_t setno = shs->md_driver.md_setno;
955 shs->shs_component_old, &key_old, &num_keys_old) != 0) {
956 return (mddeverror(&shs->mde, MDE_NAME_SPACE,
957 shs->shs_component_old));
965 return (mddeverror(&shs->mde, MDE_MULTNM,
966 shs->shs_component_old));
973 return (mddeverror(&shs->mde, MDE_INVAL_HS,
974 shs->shs_component_old));
991 return (mddeverror(&shs->mde, MDE_INVAL_HS,
992 shs->shs_component_old));
997 return (mddeverror(&shs->mde, MDE_FIX_INVAL_HS_STATE,
1002 if (shs->shs_options & HS_OPT_DRYRUN) {
1008 hs->hs_start_blk = shs->shs_start_blk;
1009 hs->hs_has_label = shs->shs_has_label;
1010 hs->hs_number_blks = shs->shs_number_blks;
1017 shs->shs_component_old);
1116 set_hs_params_t *shs
1119 mdclrerror(&shs->mde);
1121 if (md_get_setstatus(shs->md_driver.md_setno) & MD_SET_STALE)
1122 return (mdmddberror(&shs->mde, MDE_DB_STALE, NODEV32,
1123 shs->md_driver.md_setno));
1125 switch (shs->shs_cmd) {
1127 return (seths_add(shs));
1129 return (seths_delete(shs));
1131 return (seths_replace(shs));
1133 return (seths_enable(shs));
1135 return (mderror(&shs->mde, MDE_INVAL_HSOP));