diff options
author | Mike Snitzer <snitzer@redhat.com> | 2010-04-23 19:27:10 +0000 |
---|---|---|
committer | Mike Snitzer <snitzer@redhat.com> | 2010-04-23 19:27:10 +0000 |
commit | 60267bdce8adac651e6bfea9ada5856042bcf01b (patch) | |
tree | 4ab9bd06d7deea8071c3135ea261d779b6a29699 /tools/lvremove.c | |
parent | d6d08486c8ca83e75c7f75d32d9f18e36670321e (diff) | |
download | lvm2-60267bdce8adac651e6bfea9ada5856042bcf01b.tar.gz lvm2-60267bdce8adac651e6bfea9ada5856042bcf01b.tar.xz lvm2-60267bdce8adac651e6bfea9ada5856042bcf01b.zip |
Disallow the direct removal of a merging snapshot.
Allow lv_remove_with_dependencies() to know the top-level LV that was
requested to be removed (otherwise it recurses and we lose context).
A merging snapshot cannot be removed directly but the associated origin
can be. Disallow removal of a merging snapshot unless the associated
origin is also being removed.
Diffstat (limited to 'tools/lvremove.c')
-rw-r--r-- | tools/lvremove.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/tools/lvremove.c b/tools/lvremove.c index fd8a677c..dbf2f1d9 100644 --- a/tools/lvremove.c +++ b/tools/lvremove.c @@ -26,7 +26,7 @@ static int lvremove_single(struct cmd_context *cmd, struct logical_volume *lv, if (lv_is_cow(lv) && lv_is_virtual_origin(origin = origin_from_cow(lv))) lv = origin; - if (!lv_remove_with_dependencies(cmd, lv, arg_count(cmd, force_ARG))) { + if (!lv_remove_with_dependencies(cmd, lv, arg_count(cmd, force_ARG), 0)) { stack; return ECMD_FAILED; } |