diff options
author | Zdenek Kabelac <zkabelac@redhat.com> | 2011-09-07 08:41:47 +0000 |
---|---|---|
committer | Zdenek Kabelac <zkabelac@redhat.com> | 2011-09-07 08:41:47 +0000 |
commit | 4144938350038b024872ca38be9233dbbdb0432f (patch) | |
tree | c320864799d4d6703666143c9daa40d1ec2fbe6b /tools/vgchange.c | |
parent | beecb1e160c5d2df1a70a5b446dfe0fa7d106ccd (diff) | |
download | lvm2-4144938350038b024872ca38be9233dbbdb0432f.tar.gz lvm2-4144938350038b024872ca38be9233dbbdb0432f.tar.xz lvm2-4144938350038b024872ca38be9233dbbdb0432f.zip |
Support break for vgchange and vgrefresh operation
Allow to break some lengthy vgchange and vgrefresh operation.
Diffstat (limited to 'tools/vgchange.c')
-rw-r--r-- | tools/vgchange.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/tools/vgchange.c b/tools/vgchange.c index 5deb1298..f36f27d4 100644 --- a/tools/vgchange.c +++ b/tools/vgchange.c @@ -90,7 +90,11 @@ static int _activate_lvs_in_vg(struct cmd_context *cmd, struct logical_volume *lv; int count = 0, expected_count = 0; + sigint_allow(); dm_list_iterate_items(lvl, &vg->lvs) { + if (sigint_caught()) + return_0; + lv = lvl->lv; if (!lv_is_visible(lv)) @@ -160,6 +164,8 @@ static int _activate_lvs_in_vg(struct cmd_context *cmd, count++; } + sigint_restore(); + if (expected_count) log_verbose("%s %d logical volumes in volume group %s", (activate == CHANGE_AN || activate == CHANGE_ALN)? |