Signed-off-by: Alexandre Derumier <aderum...@odiso.com>
---
 PVE/QemuMigrate.pm | 40 ++++++++++++++++++++++++----------------
 1 file changed, 24 insertions(+), 16 deletions(-)

diff --git a/PVE/QemuMigrate.pm b/PVE/QemuMigrate.pm
index 3aaee51..6b14c25 100644
--- a/PVE/QemuMigrate.pm
+++ b/PVE/QemuMigrate.pm
@@ -639,22 +639,7 @@ sub phase3_cleanup {
 
     finish_spice_migration($self, $vmid);
 
-    # always stop local VM
-    eval { PVE::QemuServer::vm_stop($self->{storecfg}, $vmid, 1, 1); };
-    if (my $err = $@) {
-       $self->log('err', "stopping vm failed - $err");
-       $self->{errors} = 1;
-    }
-
-    # always deactivate volumes - avoid lvm LVs to be active on several nodes
-    eval {
-       my $vollist = PVE::QemuServer::get_vm_volumes($conf);
-       PVE::Storage::deactivate_volumes($self->{storecfg}, $vollist);
-    };
-    if (my $err = $@) {
-       $self->log('err', $err);
-       $self->{errors} = 1;
-    }
+    stop_local_vm($self, $vmid);
 
     if($self->{storage_migration}) {
        # destroy local copies
@@ -1192,4 +1177,27 @@ sub finish_spice_migration {
     };
 }
 
+sub stop_local_vm {
+    my ($self, $vmid) = @_;
+
+    my $conf = $self->{vmconf};
+
+    # always stop local VM
+    eval { PVE::QemuServer::vm_stop($self->{storecfg}, $vmid, 1, 1); };
+    if (my $err = $@) {
+       $self->log('err', "stopping vm failed - $err");
+       $self->{errors} = 1;
+    }
+
+    # always deactivate volumes - avoid lvm LVs to be active on several nodes
+    eval {
+       my $vollist = PVE::QemuServer::get_vm_volumes($conf);
+       PVE::Storage::deactivate_volumes($self->{storecfg}, $vollist);
+    };
+    if (my $err = $@) {
+       $self->log('err', $err);
+       $self->{errors} = 1;
+    }
+}
+
 1;
-- 
2.20.1

_______________________________________________
pve-devel mailing list
pve-devel@pve.proxmox.com
https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to