From nobody Fri May 3 07:48:27 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1510231415124119.38638500657532; Thu, 9 Nov 2017 04:43:35 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 9DD7861488; Thu, 9 Nov 2017 12:43:33 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5031E5D9C8; Thu, 9 Nov 2017 12:43:33 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 070F7180474A; Thu, 9 Nov 2017 12:43:32 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id vA9ChUQi029810 for ; Thu, 9 Nov 2017 07:43:30 -0500 Received: by smtp.corp.redhat.com (Postfix) id 1FD176F978; Thu, 9 Nov 2017 12:43:30 +0000 (UTC) Received: from moe.brq.redhat.com (unknown [10.43.2.192]) by smtp.corp.redhat.com (Postfix) with ESMTP id 941C66F10D for ; Thu, 9 Nov 2017 12:43:26 +0000 (UTC) From: Michal Privoznik To: libvir-list@redhat.com Date: Thu, 9 Nov 2017 13:43:22 +0100 Message-Id: X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH] qemuBuildDriveDevStr: Prefer default aliases for IDE bus X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.39]); Thu, 09 Nov 2017 12:43:34 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" https://bugzilla.redhat.com/show_bug.cgi?id=3D1434451 When testing user aliases it was discovered that for 440fx machine type which has default IDE bus builtin, domain cannot start if IDE controller has the user provided alias. This is because for 440fx we don't put the IDE controller onto the command line (since it is builtin) and therefore any device that is plugged onto the bus must use the default alias. Signed-off-by: Michal Privoznik --- src/qemu/qemu_command.c | 14 +++++++++++--- tests/qemuxml2argvdata/qemuxml2argv-user-aliases.args | 4 ++-- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 364196783..6cc77df2e 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -1886,9 +1886,17 @@ qemuBuildDriveDevStr(const virDomainDef *def, virBufferAddLit(&opt, "ide-drive"); } =20 - if (!(contAlias =3D virDomainControllerAliasFind(def, VIR_DOMAIN_C= ONTROLLER_TYPE_IDE, - disk->info.addr.dri= ve.controller))) - goto error; + /* When domain has builtin IDE controller we don't put it onto cmd + * line. Therefore we can't set its alias. In that case, use the + * default one. */ + if (qemuDomainHasBuiltinIDE(def)) { + contAlias =3D "ide"; + } else { + if (!(contAlias =3D virDomainControllerAliasFind(def, + VIR_DOMAIN_CONT= ROLLER_TYPE_IDE, + disk->info.addr= .drive.controller))) + goto error; + } virBufferAsprintf(&opt, ",bus=3D%s.%d,unit=3D%d", contAlias, disk->info.addr.drive.bus, diff --git a/tests/qemuxml2argvdata/qemuxml2argv-user-aliases.args b/tests/= qemuxml2argvdata/qemuxml2argv-user-aliases.args index 62fbd567b..1719c1bc8 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-user-aliases.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-user-aliases.args @@ -44,8 +44,8 @@ id=3Ddrive-ua-myEncryptedDisk1 \ id=3Dua-myEncryptedDisk1 \ -drive file=3D/home/zippy/tmp/install-amd64-minimal-20140619.iso,format=3D= raw,\ if=3Dnone,media=3Dcdrom,id=3Ddrive-ua-WhatAnAwesomeCDROM,readonly=3Don,cac= he=3Dnone \ --device ide-drive,bus=3Dua-DoesAnybodyStillUseIDE.1,unit=3D0,\ -drive=3Ddrive-ua-WhatAnAwesomeCDROM,id=3Dua-WhatAnAwesomeCDROM \ +-device ide-drive,bus=3Dide.1,unit=3D0,drive=3Ddrive-ua-WhatAnAwesomeCDROM= ,\ +id=3Dua-WhatAnAwesomeCDROM \ -device virtio-net-pci,vlan=3D0,id=3Dua-CheckoutThisNIC,mac=3D52:54:00:d6:= c0:0b,\ bus=3Dpci.0,addr=3D0x3 \ -net tap,fd=3D3,vlan=3D0,name=3Dhostua-CheckoutThisNIC \ --=20 2.13.6 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list