Lines Matching refs:cmd

25 const char *command_name(struct cmd_context *cmd)  in command_name()  argument
27 return cmd->command->name; in command_name()
33 char *skip_dev_dir(struct cmd_context *cmd, const char *vg_name, in skip_dev_dir() argument
55 if (!dm_split_lvm_name(cmd->mem, vg_name, &vgname, &lvname, &layer) || in skip_dev_dir()
62 if (!(vglv = dm_pool_alloc(cmd->mem, vglv_sz)) || in skip_dev_dir()
72 if (!strncmp(vg_name, cmd->dev_dir, strlen(cmd->dev_dir))) { in skip_dev_dir()
75 vg_name += strlen(cmd->dev_dir); in skip_dev_dir()
87 int process_each_lv_in_vg(struct cmd_context *cmd, in process_each_lv_in_vg() argument
127 if (lv_is_virtual_origin(lvl->lv) && !arg_count(cmd, all_ARG)) in process_each_lv_in_vg()
152 ret = process_single(cmd, lvl->lv, handle); in process_each_lv_in_vg()
168 int process_each_lv(struct cmd_context *cmd, int argc, char **argv, in process_each_lv() argument
170 int (*process_single) (struct cmd_context * cmd, in process_each_lv()
212 if (!str_list_add(cmd->mem, &tags, in process_each_lv()
213 dm_pool_strdup(cmd->mem, in process_each_lv()
222 vgname = skip_dev_dir(cmd, vgname, &dev_dir_found); in process_each_lv()
237 if (!(vgname = extract_vgname(cmd, vgname))) { in process_each_lv()
243 (vgname_def = default_vgname(cmd))) { in process_each_lv()
248 if (!str_list_add(cmd->mem, &arg_vgnames, in process_each_lv()
249 dm_pool_strdup(cmd->mem, vgname))) { in process_each_lv()
255 if (!str_list_add(cmd->mem, &arg_lvnames, in process_each_lv()
256 dm_pool_strdup(cmd->mem, in process_each_lv()
263 if (!(vglv = dm_pool_alloc(cmd->mem, vglv_sz)) || in process_each_lv()
269 if (!str_list_add(cmd->mem, &arg_lvnames, vglv)) { in process_each_lv()
280 if (!(vgnames = get_vgnames(cmd, 0)) || dm_list_empty(vgnames)) { in process_each_lv()
291 vg = vg_read(cmd, vgname, NULL, flags); in process_each_lv()
316 if (!str_list_add(cmd->mem, &lvnames, in process_each_lv()
317 dm_pool_strdup(cmd->mem, in process_each_lv()
326 ret = process_each_lv_in_vg(cmd, vg, &lvnames, tags_arg, in process_each_lv()
328 unlock_and_release_vg(cmd, vg, vgname); in process_each_lv()
338 int process_each_segment_in_pv(struct cmd_context *cmd, in process_each_segment_in_pv() argument
342 int (*process_single) (struct cmd_context * cmd, in process_each_segment_in_pv()
358 vg = vg_read(cmd, vg_name, NULL, 0); in process_each_segment_in_pv()
380 ret = process_single(cmd, NULL, &_free_pv_segment, handle); in process_each_segment_in_pv()
385 ret = process_single(cmd, vg, pvseg, handle); in process_each_segment_in_pv()
393 unlock_vg(cmd, vg_name); in process_each_segment_in_pv()
400 int process_each_segment_in_lv(struct cmd_context *cmd, in process_each_segment_in_lv() argument
403 int (*process_single) (struct cmd_context * cmd, in process_each_segment_in_lv()
412 ret = process_single(cmd, seg, handle); in process_each_segment_in_lv()
422 static int _process_one_vg(struct cmd_context *cmd, const char *vg_name, in _process_one_vg() argument
426 int (*process_single) (struct cmd_context * cmd, in _process_one_vg()
436 vg = vg_read(cmd, vg_name, vgid, flags); in _process_one_vg()
452 if ((ret = process_single(cmd, vg_name, vg, in _process_one_vg()
460 unlock_and_release_vg(cmd, vg, vg_name); in _process_one_vg()
464 int process_each_vg(struct cmd_context *cmd, int argc, char **argv, in process_each_vg() argument
466 int (*process_single) (struct cmd_context * cmd, in process_each_vg()
496 if (!str_list_add(cmd->mem, &tags, in process_each_vg()
497 dm_pool_strdup(cmd->mem, in process_each_vg()
505 vg_name = skip_dev_dir(cmd, vg_name, NULL); in process_each_vg()
513 if (!str_list_add(cmd->mem, &arg_vgnames, in process_each_vg()
514 dm_pool_strdup(cmd->mem, vg_name))) { in process_each_vg()
525 if (!(vgids = get_vgids(cmd, 0)) || dm_list_empty(vgids)) { in process_each_vg()
531 if (!vgid || !(vg_name = vgname_from_vgid(cmd->mem, vgid)) || in process_each_vg()
534 ret_max = _process_one_vg(cmd, vg_name, vgid, &tags, in process_each_vg()
546 ret_max = _process_one_vg(cmd, vg_name, NULL, &tags, in process_each_vg()
558 int process_each_pv_in_vg(struct cmd_context *cmd, struct volume_group *vg, in process_each_pv_in_vg() argument
571 if ((ret = process_single(cmd, vg, pvl->pv, handle)) > ret_max) in process_each_pv_in_vg()
580 static int _process_all_devs(struct cmd_context *cmd, void *handle, in _process_all_devs() argument
581 int (*process_single) (struct cmd_context * cmd, in _process_all_devs()
594 if (!scan_vgs_for_pvs(cmd)) { in _process_all_devs()
599 if (!(iter = dev_iter_create(cmd->filter, 1))) { in _process_all_devs()
605 if (!(pv = pv_read(cmd, dev_name(dev), NULL, NULL, 0, 0))) { in _process_all_devs()
613 ret = process_single(cmd, NULL, pv, handle); in _process_all_devs()
630 int process_each_pv(struct cmd_context *cmd, int argc, char **argv, in process_each_pv() argument
633 int (*process_single) (struct cmd_context * cmd, in process_each_pv()
653 if (lock_global && !lock_vol(cmd, VG_GLOBAL, LCK_VG_READ)) { in process_each_pv()
671 if (!str_list_add(cmd->mem, &tags, in process_each_pv()
672 dm_pool_strdup(cmd->mem, in process_each_pv()
690 if (!(pv = pv_read(cmd, argv[opt], NULL, in process_each_pv()
707 !scan_vgs_for_pvs(cmd)) { in process_each_pv()
713 if (!(pv = pv_read(cmd, argv[opt], in process_each_pv()
725 ret = process_single(cmd, vg, pv, handle); in process_each_pv()
731 if (!dm_list_empty(&tags) && (vgnames = get_vgnames(cmd, 0)) && in process_each_pv()
734 vg = vg_read(cmd, sll->str, NULL, flags); in process_each_pv()
742 ret = process_each_pv_in_vg(cmd, vg, &tags, in process_each_pv()
746 unlock_and_release_vg(cmd, vg, sll->str); in process_each_pv()
758 ret = process_each_pv_in_vg(cmd, vg, NULL, handle, in process_each_pv()
764 } else if (arg_count(cmd, all_ARG)) { in process_each_pv()
765 ret = _process_all_devs(cmd, handle, process_single); in process_each_pv()
773 if (!(pvslist = get_pvs(cmd))) in process_each_pv()
777 ret = process_single(cmd, NULL, pvl->pv, in process_each_pv()
788 unlock_vg(cmd, VG_GLOBAL); in process_each_pv()
792 unlock_vg(cmd, VG_GLOBAL); in process_each_pv()
800 const char *extract_vgname(struct cmd_context *cmd, const char *lv_name) in extract_vgname() argument
804 char *dev_dir = cmd->dev_dir; in extract_vgname()
838 vg_name = dm_pool_strdup(cmd->mem, vg_name); in extract_vgname()
848 if (!(vg_name = default_vgname(cmd))) { in extract_vgname()
861 char *default_vgname(struct cmd_context *cmd) in default_vgname() argument
870 vg_path = skip_dev_dir(cmd, vg_path, NULL); in default_vgname()
878 return dm_pool_strdup(cmd->mem, vg_path); in default_vgname()
1213 int vgcreate_params_set_from_args(struct cmd_context *cmd, in vgcreate_params_set_from_args() argument
1217 vp_new->vg_name = skip_dev_dir(cmd, vp_def->vg_name, NULL); in vgcreate_params_set_from_args()
1218 vp_new->max_lv = arg_uint_value(cmd, maxlogicalvolumes_ARG, in vgcreate_params_set_from_args()
1220 vp_new->max_pv = arg_uint_value(cmd, maxphysicalvolumes_ARG, in vgcreate_params_set_from_args()
1222 vp_new->alloc = arg_uint_value(cmd, alloc_ARG, vp_def->alloc); in vgcreate_params_set_from_args()
1226 arg_uint_value(cmd, physicalextentsize_ARG, vp_def->extent_size); in vgcreate_params_set_from_args()
1228 if (arg_count(cmd, clustered_ARG)) in vgcreate_params_set_from_args()
1230 !strcmp(arg_str_value(cmd, clustered_ARG, in vgcreate_params_set_from_args()
1236 if (arg_sign_value(cmd, physicalextentsize_ARG, 0) == SIGN_MINUS) { in vgcreate_params_set_from_args()
1241 if (arg_sign_value(cmd, maxlogicalvolumes_ARG, 0) == SIGN_MINUS) { in vgcreate_params_set_from_args()
1246 if (arg_sign_value(cmd, maxphysicalvolumes_ARG, 0) == SIGN_MINUS) { in vgcreate_params_set_from_args()
1254 int lv_refresh(struct cmd_context *cmd, struct logical_volume *lv) in lv_refresh() argument
1256 return suspend_lv(cmd, lv) && resume_lv(cmd, lv); in lv_refresh()
1259 int vg_refresh_visible(struct cmd_context *cmd, struct volume_group *vg) in vg_refresh_visible() argument
1266 if (!lv_refresh(cmd, lvl->lv)) in vg_refresh_visible()
1272 void lv_spawn_background_polling(struct cmd_context *cmd, in lv_spawn_background_polling() argument
1281 pvmove_poll(cmd, pvname, 1); in lv_spawn_background_polling()
1286 pvmove_poll(cmd, pvname, 1); in lv_spawn_background_polling()
1292 lvconvert_poll(cmd, lv, 1); in lv_spawn_background_polling()
1302 int pvcreate_params_validate(struct cmd_context *cmd, in pvcreate_params_validate() argument
1311 if (arg_count(cmd, yes_ARG) && !arg_count(cmd, force_ARG)) { in pvcreate_params_validate()
1316 pp->yes = arg_count(cmd, yes_ARG); in pvcreate_params_validate()
1317 pp->force = arg_count(cmd, force_ARG); in pvcreate_params_validate()
1319 if (arg_int_value(cmd, labelsector_ARG, 0) >= LABEL_SCAN_SECTORS) { in pvcreate_params_validate()
1324 pp->labelsector = arg_int64_value(cmd, labelsector_ARG, in pvcreate_params_validate()
1328 if (!(cmd->fmt->features & FMT_MDAS) && in pvcreate_params_validate()
1329 (arg_count(cmd, pvmetadatacopies_ARG) || in pvcreate_params_validate()
1330 arg_count(cmd, metadatasize_ARG) || in pvcreate_params_validate()
1331 arg_count(cmd, dataalignment_ARG) || in pvcreate_params_validate()
1332 arg_count(cmd, dataalignmentoffset_ARG))) { in pvcreate_params_validate()
1338 if (arg_count(cmd, pvmetadatacopies_ARG) && in pvcreate_params_validate()
1339 arg_int_value(cmd, pvmetadatacopies_ARG, -1) > 2) { in pvcreate_params_validate()
1344 if (arg_count(cmd, zero_ARG)) in pvcreate_params_validate()
1345 pp->zero = strcmp(arg_str_value(cmd, zero_ARG, "y"), "n"); in pvcreate_params_validate()
1347 if (arg_sign_value(cmd, dataalignment_ARG, 0) == SIGN_MINUS) { in pvcreate_params_validate()
1351 pp->data_alignment = arg_uint64_value(cmd, dataalignment_ARG, UINT64_C(0)); in pvcreate_params_validate()
1366 if (arg_sign_value(cmd, dataalignmentoffset_ARG, 0) == SIGN_MINUS) { in pvcreate_params_validate()
1370 pp->data_alignment_offset = arg_uint64_value(cmd, dataalignmentoffset_ARG, UINT64_C(0)); in pvcreate_params_validate()
1384 if (arg_sign_value(cmd, metadatasize_ARG, 0) == SIGN_MINUS) { in pvcreate_params_validate()
1389 pp->pvmetadatasize = arg_uint64_value(cmd, metadatasize_ARG, UINT64_C(0)); in pvcreate_params_validate()
1391 pp->pvmetadatasize = find_config_tree_int(cmd, in pvcreate_params_validate()
1395 pp->pvmetadatacopies = arg_int_value(cmd, pvmetadatacopies_ARG, -1); in pvcreate_params_validate()
1397 pp->pvmetadatacopies = find_config_tree_int(cmd, in pvcreate_params_validate()