From a8947db1a4efc6fc53dabb67b74ba1c01c7fbc8b Mon Sep 17 00:00:00 2001 From: Michal Privoznik Date: Fri, 23 Sep 2022 15:06:19 +0200 Subject: [PATCH] qemu_domain: Ignore all but SCSI hostdevs in qemuDomainDeviceHostdevDefPostParseRestoreBackendAlias() When retiring QEMU_CAPS_BLOCKDEV_HOSTDEV_SCSI capability the commit removed a bit too much. Previously, all other devices than VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI were ignored in qemuDomainDeviceHostdevDefPostParseRestoreBackendAlias(). But the commit in question removed not only the capability check but also this return early statement. Restore it back. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2129239 Fixes: dc8dbb27d40968c9d9bfad2c6181bccc20c0e44e Signed-off-by: Michal Privoznik Reviewed-by: Peter Krempa Reviewed-by: Martin Kletzander --- src/qemu/qemu_domain.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index d7ef23f493..ee024d17cd 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -5596,6 +5596,10 @@ qemuDomainDeviceHostdevDefPostParseRestoreBackendAlias(virDomainHostdevDef *host if (!(parseFlags & VIR_DOMAIN_DEF_PARSE_STATUS)) return 0; + if (hostdev->mode != VIR_DOMAIN_HOSTDEV_MODE_SUBSYS || + hostdev->source.subsys.type != VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI) + return 0; + switch ((virDomainHostdevSCSIProtocolType) scsisrc->protocol) { case VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_NONE: if (!scsisrc->u.host.src)