From nobody Thu May 15 13:03:21 2025 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 1508511162237891.8707492515206; Fri, 20 Oct 2017 07:52:42 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 3C9DFA7E9; Fri, 20 Oct 2017 14:52:40 +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 1D3365D763; Fri, 20 Oct 2017 14:52:40 +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 DA65D1800C9C; Fri, 20 Oct 2017 14:52:39 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id v9KEqZ0E030281 for ; Fri, 20 Oct 2017 10:52:35 -0400 Received: by smtp.corp.redhat.com (Postfix) id 5E50B2CFF3; Fri, 20 Oct 2017 14:52:35 +0000 (UTC) Received: from moe.brq.redhat.com (unknown [10.43.2.192]) by smtp.corp.redhat.com (Postfix) with ESMTP id DB36C5C1A3 for ; Fri, 20 Oct 2017 14:52:34 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 3C9DFA7E9 Authentication-Results: ext-mx05.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx05.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=libvir-list-bounces@redhat.com From: Michal Privoznik To: libvir-list@redhat.com Date: Fri, 20 Oct 2017 16:52:11 +0200 Message-Id: <735fa2955866f6e91566fb0e515b0f6a09f3e998.1508511016.git.mprivozn@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v2 01/11] qemu_alias: Be more tolerant if alias don't follow our format 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.15 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.29]); Fri, 20 Oct 2017 14:52:40 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" When assigning alias to a device we usually iterate over other devices of its kind trying to find next index. We do this by stripping down the prefix and then parsing number at the end, Usually, if the prefix doesn't match the one we are expecting, we just continue with next iteration. Except for couple of functions: qemuGetNextChrDevIndex(), qemuAssignDeviceRedirdevAlias() and qemuAssignDeviceShmemAlias(). Signed-off-by: Michal Privoznik --- src/qemu/qemu_alias.c | 22 ++++++---------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/src/qemu/qemu_alias.c b/src/qemu/qemu_alias.c index d06a3d63e..37fe2aa80 100644 --- a/src/qemu/qemu_alias.c +++ b/src/qemu/qemu_alias.c @@ -73,11 +73,8 @@ qemuGetNextChrDevIndex(virDomainDefPtr def, ssize_t thisidx; if (((thisidx =3D qemuDomainDeviceAliasIndex(&arrPtr[i]->info, pre= fix)) < 0) && (prefix2 && - (thisidx =3D qemuDomainDeviceAliasIndex(&arrPtr[i]->info, pre= fix2)) < 0)) { - virReportError(VIR_ERR_INTERNAL_ERROR, "%s", - _("Unable to determine device index for charact= er device")); - return -1; - } + (thisidx =3D qemuDomainDeviceAliasIndex(&arrPtr[i]->info, pre= fix2)) < 0)) + continue; if (thisidx >=3D idx) idx =3D thisidx + 1; } @@ -391,11 +388,8 @@ qemuAssignDeviceRedirdevAlias(virDomainDefPtr def, idx =3D 0; for (i =3D 0; i < def->nredirdevs; i++) { int thisidx; - if ((thisidx =3D qemuDomainDeviceAliasIndex(&def->redirdevs[i]= ->info, "redir")) < 0) { - virReportError(VIR_ERR_INTERNAL_ERROR, "%s", - _("Unable to determine device index for red= irected device")); - return -1; - } + if ((thisidx =3D qemuDomainDeviceAliasIndex(&def->redirdevs[i]= ->info, "redir")) < 0) + continue; if (thisidx >=3D idx) idx =3D thisidx + 1; } @@ -491,12 +485,8 @@ qemuAssignDeviceShmemAlias(virDomainDefPtr def, int thisidx; =20 if ((thisidx =3D qemuDomainDeviceAliasIndex(&def->shmems[i]->i= nfo, - "shmem")) < 0) { - virReportError(VIR_ERR_INTERNAL_ERROR, "%s", - _("Unable to determine device index " - "for shmem device")); - return -1; - } + "shmem")) < 0) + continue; =20 if (thisidx >=3D idx) idx =3D thisidx + 1; --=20 2.13.6 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list