From 95d6343bfabadbbc38c191fc534ca9d599579001 Mon Sep 17 00:00:00 2001 From: Derumier Alexandre Date: Sun, 5 Feb 2012 14:19:06 +0100 Subject: [PATCH] don't try to hotplug/unplug is device exist/don't exist Signed-off-by: Derumier Alexandre --- PVE/QemuServer.pm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm index 942432b7..e1a4cfd2 100644 --- a/PVE/QemuServer.pm +++ b/PVE/QemuServer.pm @@ -2228,6 +2228,9 @@ sub vm_deviceplug { return 1 if !check_running($vmid) || !$conf->{hotplug}; + my $devices_list = vm_devices_list($vmid); + return 1 if defined($devices_list->{$deviceid}); + if ($deviceid =~ m/^(virtio)(\d+)$/) { return undef if !qemu_driveadd($storecfg, $vmid, $device); my $devicefull = print_drivedevice_full($storecfg, $vmid, $device); @@ -2273,6 +2276,9 @@ sub vm_deviceunplug { return 1 if !check_running ($vmid) || !$conf->{hotplug}; + my $devices_list = vm_devices_list($vmid); + return 1 if !defined($devices_list->{$deviceid}); + die "can't unplug bootdisk" if $conf->{bootdisk} && $conf->{bootdisk} eq $deviceid; if ($deviceid =~ m/^(virtio)(\d+)$/) {