diff options
Diffstat (limited to 'tools/lvcreate.c')
-rw-r--r-- | tools/lvcreate.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/tools/lvcreate.c b/tools/lvcreate.c index ec48ae6d..9d035b8c 100644 --- a/tools/lvcreate.c +++ b/tools/lvcreate.c @@ -204,7 +204,12 @@ static int _determine_snapshot_type(struct volume_group *vg, return 0; } - if (lv_is_thin_volume(lvl->lv)) { + if (!arg_count(vg->cmd, extents_ARG) && !arg_count(vg->cmd, size_ARG)) { + if (!lv_is_thin_volume(lvl->lv)) { + log_error("Please specify either size or extents with snapshots."); + return 0; + } + lp->thin = 1; if (!(lp->segtype = get_segtype_from_string(vg->cmd, "thin"))) return_0; @@ -212,11 +217,6 @@ static int _determine_snapshot_type(struct volume_group *vg, lp->pool = first_seg(lvl->lv)->pool_lv->name; } - if (!lp->thin && !arg_count(vg->cmd, extents_ARG) && !arg_count(vg->cmd, size_ARG)) { - log_error("Please specify either size or extents with snapshots."); - return 0; - } - return 1; } |