From nobody Mon Feb 9 00:55:43 2026 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; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1553277721387447.6463492419655; Fri, 22 Mar 2019 11:02:01 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id C84773087959; Fri, 22 Mar 2019 18:01:59 +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 A058C60BF2; Fri, 22 Mar 2019 18:01:59 +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 4E252181A87B; Fri, 22 Mar 2019 18:01:59 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x2MI1bY9009068 for ; Fri, 22 Mar 2019 14:01:37 -0400 Received: by smtp.corp.redhat.com (Postfix) id 128235D9D5; Fri, 22 Mar 2019 18:01:37 +0000 (UTC) Received: from angien.brq.redhat.com (unknown [10.43.2.229]) by smtp.corp.redhat.com (Postfix) with ESMTP id 8F2845D9D2 for ; Fri, 22 Mar 2019 18:01:36 +0000 (UTC) From: Peter Krempa To: libvir-list@redhat.com Date: Fri, 22 Mar 2019 19:01:05 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v2 29/29] conf: Add 'index' attribute for 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: , 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.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.45]); Fri, 22 Mar 2019 18:02:00 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Similarly to the disk source we need to keep the disk index (which is in the qemu driver used for identification of the source for block jobs) for the element so that when it's replaced as a disk source after pivoting all the allocated data is present. Signed-off-by: Peter Krempa Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 7 +++++-- tests/qemuxml2argvdata/disk-mirror.xml | 4 ++-- tests/qemuxml2xmloutdata/disk-mirror-active.xml | 4 ++-- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 0970d48045..72dd45feb8 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -9320,6 +9320,7 @@ virDomainDiskDefMirrorParse(virDomainDiskDefPtr def, VIR_AUTOFREE(char *) mirrorType =3D NULL; VIR_AUTOFREE(char *) ready =3D NULL; VIR_AUTOFREE(char *) blockJob =3D NULL; + VIR_AUTOFREE(char *) index =3D NULL; ctxt->node =3D cur; @@ -9335,6 +9336,7 @@ virDomainDiskDefMirrorParse(virDomainDiskDefPtr def, if ((mirrorType =3D virXMLPropString(cur, "type"))) { mirrorFormat =3D virXPathString("string(./format/@type)", ctxt); + index =3D virXPathString("string(./source/@index)", ctxt); } else { if (def->mirrorJob !=3D VIR_DOMAIN_BLOCK_JOB_TYPE_COPY) { virReportError(VIR_ERR_XML_ERROR, "%s", @@ -9345,7 +9347,8 @@ virDomainDiskDefMirrorParse(virDomainDiskDefPtr def, mirrorFormat =3D virXMLPropString(cur, "format"); } - if (!(def->mirror =3D virDomainStorageSourceParseBase(mirrorType, mirr= orFormat, NULL))) + if (!(def->mirror =3D virDomainStorageSourceParseBase(mirrorType, mirr= orFormat, + index))) return -1; if (mirrorType) { @@ -24032,7 +24035,7 @@ virDomainDiskDefFormatMirror(virBufferPtr buf, virDomainDiskMirrorStateTypeToString(disk->m= irrorState)); virBufferEscapeString(&childBuf, "\n", formatStr); - if (virDomainDiskSourceFormat(&childBuf, disk->mirror, 0, false, flags= , xmlopt) < 0) + if (virDomainDiskSourceFormat(&childBuf, disk->mirror, 0, true, flags,= xmlopt) < 0) return -1; if (virDomainDiskBackingStoreFormat(&childBuf, disk->mirror, xmlopt, f= lags) < 0) diff --git a/tests/qemuxml2argvdata/disk-mirror.xml b/tests/qemuxml2argvdat= a/disk-mirror.xml index c1e6e94e33..5a825c54ac 100644 --- a/tests/qemuxml2argvdata/disk-mirror.xml +++ b/tests/qemuxml2argvdata/disk-mirror.xml @@ -45,8 +45,8 @@ - - + + diff --git a/tests/qemuxml2xmloutdata/disk-mirror-active.xml b/tests/qemuxm= l2xmloutdata/disk-mirror-active.xml index 32ffc647be..bebdb849c2 100644 --- a/tests/qemuxml2xmloutdata/disk-mirror-active.xml +++ b/tests/qemuxml2xmloutdata/disk-mirror-active.xml @@ -51,8 +51,8 @@ - - + + --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list