From 7820eae4385fba3c1ebc5e4aca2263b0f945fff0 Mon Sep 17 00:00:00 2001 From: Dominik Csapak Date: Wed, 13 Mar 2019 17:28:04 +0100 Subject: [PATCH] fix #2131: get correct device when deleting iothreads we map scsiX to virtioscsiX/scsihwX when we use virtio-scsi-single to add and iothread so we have to map it back when we delete an iothread, else the parsing fails with 'invalid drive key: virtioscsi0' Signed-off-by: Dominik Csapak --- PVE/QemuServer.pm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm index 546b22e..ed950fc 100644 --- a/PVE/QemuServer.pm +++ b/PVE/QemuServer.pm @@ -4278,7 +4278,11 @@ sub qemu_iothread_add { sub qemu_iothread_del { my($conf, $vmid, $deviceid) = @_; - my $device = parse_drive($deviceid, $conf->{$deviceid}); + my $confid = $deviceid; + if ($deviceid =~ m/^(?:virtioscsi|scsihw)(\d+)$/) { + $confid = 'scsi' . $1; + } + my $device = parse_drive($confid, $conf->{$confid}); if ($device->{iothread}) { my $iothreads = vm_iothreads_list($vmid); qemu_objectdel($vmid, "iothread-$deviceid") if $iothreads->{"iothread-$deviceid"}; -- 2.39.2