From nobody Sat Feb 7 04:40:30 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 1530008495371300.21938421684877; Tue, 26 Jun 2018 03:21:35 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.27]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id D5A32C059B77; Tue, 26 Jun 2018 10:21:33 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9B427B8445; Tue, 26 Jun 2018 10:21: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 1AB474A465; Tue, 26 Jun 2018 10:21:33 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w5QALRAs011525 for ; Tue, 26 Jun 2018 06:21:27 -0400 Received: by smtp.corp.redhat.com (Postfix) id 335462026D6C; Tue, 26 Jun 2018 10:21:27 +0000 (UTC) Received: from moe.brq.redhat.com (unknown [10.43.2.192]) by smtp.corp.redhat.com (Postfix) with ESMTP id CBA5A2026D6A for ; Tue, 26 Jun 2018 10:21:26 +0000 (UTC) From: Michal Privoznik To: libvir-list@redhat.com Date: Tue, 26 Jun 2018 12:21:22 +0200 Message-Id: <08d66d8b11c5c7ac75c7d13cdd47175e1efc565c.1530008330.git.mprivozn@redhat.com> In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH v2 2/3] conf: Reintroduce action to virDomainDefCompatibleDevice 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.84 on 10.5.11.27 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Tue, 26 Jun 2018 10:21:34 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" This was lost in c57f3fd2f8999d17e01. But now we are going to need it again. Signed-off-by: Michal Privoznik Reviewed-by: John Ferlan --- src/conf/domain_conf.c | 3 ++- src/conf/domain_conf.h | 3 ++- src/lxc/lxc_driver.c | 9 ++++++--- src/qemu/qemu_driver.c | 24 ++++++++++++++++-------- 4 files changed, 26 insertions(+), 13 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index d8cb7f37f3..93cfca351c 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -28205,7 +28205,8 @@ virDomainDeviceInfoCheckBootIndex(virDomainDefPtr d= ef ATTRIBUTE_UNUSED, int virDomainDefCompatibleDevice(virDomainDefPtr def, virDomainDeviceDefPtr dev, - virDomainDeviceDefPtr oldDev) + virDomainDeviceDefPtr oldDev, + virDomainDeviceAction action ATTRIBUTE_UNUSED) { virDomainCompatibleDeviceData data =3D { .newInfo =3D virDomainDeviceGetInfo(dev), diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index 0924fc4f3c..f33405e097 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -3106,7 +3106,8 @@ typedef enum { =20 int virDomainDefCompatibleDevice(virDomainDefPtr def, virDomainDeviceDefPtr dev, - virDomainDeviceDefPtr oldDev); + virDomainDeviceDefPtr oldDev, + virDomainDeviceAction action); =20 void virDomainRNGDefFree(virDomainRNGDefPtr def); =20 diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c index cfb431488d..850b12726b 100644 --- a/src/lxc/lxc_driver.c +++ b/src/lxc/lxc_driver.c @@ -3549,7 +3549,8 @@ lxcDomainUpdateDeviceConfig(virDomainDefPtr vmdef, goto cleanup; =20 oldDev.data.net =3D vmdef->nets[idx]; - if (virDomainDefCompatibleDevice(vmdef, dev, &oldDev) < 0) + if (virDomainDefCompatibleDevice(vmdef, dev, &oldDev, + VIR_DOMAIN_DEVICE_ACTION_UPDATE) = < 0) return -1; =20 virDomainNetDefFree(vmdef->nets[idx]); @@ -4785,7 +4786,8 @@ static int lxcDomainAttachDeviceFlags(virDomainPtr do= m, if (!vmdef) goto endjob; =20 - if (virDomainDefCompatibleDevice(vmdef, dev, NULL) < 0) + if (virDomainDefCompatibleDevice(vmdef, dev, NULL, + VIR_DOMAIN_DEVICE_ACTION_ATTACH) = < 0) goto endjob; =20 if ((ret =3D lxcDomainAttachDeviceConfig(vmdef, dev)) < 0) @@ -4793,7 +4795,8 @@ static int lxcDomainAttachDeviceFlags(virDomainPtr do= m, } =20 if (flags & VIR_DOMAIN_AFFECT_LIVE) { - if (virDomainDefCompatibleDevice(vm->def, dev_copy, NULL) < 0) + if (virDomainDefCompatibleDevice(vm->def, dev_copy, NULL, + VIR_DOMAIN_DEVICE_ACTION_ATTACH) = < 0) goto endjob; =20 if ((ret =3D lxcDomainAttachDeviceLive(dom->conn, driver, vm, dev_= copy)) < 0) diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index e3fb4919a5..8c0c681c4d 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -7885,7 +7885,8 @@ qemuDomainChangeDiskLive(virDomainObjPtr vm, } =20 oldDev.data.disk =3D orig_disk; - if (virDomainDefCompatibleDevice(vm->def, dev, &oldDev) < 0) + if (virDomainDefCompatibleDevice(vm->def, dev, &oldDev, + VIR_DOMAIN_DEVICE_ACTION_UPDATE) < 0) goto cleanup; =20 if (!qemuDomainDiskChangeSupported(disk, orig_disk)) @@ -7943,7 +7944,8 @@ qemuDomainUpdateDeviceLive(virDomainObjPtr vm, case VIR_DOMAIN_DEVICE_GRAPHICS: if ((idx =3D qemuDomainFindGraphicsIndex(vm->def, dev->data.graphi= cs)) >=3D 0) { oldDev.data.graphics =3D vm->def->graphics[idx]; - if (virDomainDefCompatibleDevice(vm->def, dev, &oldDev) < 0) + if (virDomainDefCompatibleDevice(vm->def, dev, &oldDev, + VIR_DOMAIN_DEVICE_ACTION_UPDA= TE) < 0) return -1; } =20 @@ -7953,7 +7955,8 @@ qemuDomainUpdateDeviceLive(virDomainObjPtr vm, case VIR_DOMAIN_DEVICE_NET: if ((idx =3D virDomainNetFindIdx(vm->def, dev->data.net)) >=3D 0) { oldDev.data.net =3D vm->def->nets[idx]; - if (virDomainDefCompatibleDevice(vm->def, dev, &oldDev) < 0) + if (virDomainDefCompatibleDevice(vm->def, dev, &oldDev, + VIR_DOMAIN_DEVICE_ACTION_UPDA= TE) < 0) return -1; } =20 @@ -8406,7 +8409,8 @@ qemuDomainUpdateDeviceConfig(virDomainDefPtr vmdef, } =20 oldDev.data.disk =3D vmdef->disks[pos]; - if (virDomainDefCompatibleDevice(vmdef, dev, &oldDev) < 0) + if (virDomainDefCompatibleDevice(vmdef, dev, &oldDev, + VIR_DOMAIN_DEVICE_ACTION_UPDATE) = < 0) return -1; =20 virDomainDiskDefFree(vmdef->disks[pos]); @@ -8425,7 +8429,8 @@ qemuDomainUpdateDeviceConfig(virDomainDefPtr vmdef, } =20 oldDev.data.graphics =3D vmdef->graphics[pos]; - if (virDomainDefCompatibleDevice(vmdef, dev, &oldDev) < 0) + if (virDomainDefCompatibleDevice(vmdef, dev, &oldDev, + VIR_DOMAIN_DEVICE_ACTION_UPDATE) = < 0) return -1; =20 virDomainGraphicsDefFree(vmdef->graphics[pos]); @@ -8439,7 +8444,8 @@ qemuDomainUpdateDeviceConfig(virDomainDefPtr vmdef, return -1; =20 oldDev.data.net =3D vmdef->nets[pos]; - if (virDomainDefCompatibleDevice(vmdef, dev, &oldDev) < 0) + if (virDomainDefCompatibleDevice(vmdef, dev, &oldDev, + VIR_DOMAIN_DEVICE_ACTION_UPDATE) = < 0) return -1; =20 virDomainNetDefFree(vmdef->nets[pos]); @@ -8530,7 +8536,8 @@ qemuDomainAttachDeviceLiveAndConfig(virDomainObjPtr v= m, if (!vmdef) goto cleanup; =20 - if (virDomainDefCompatibleDevice(vmdef, dev, NULL) < 0) + if (virDomainDefCompatibleDevice(vmdef, dev, NULL, + VIR_DOMAIN_DEVICE_ACTION_ATTACH) = < 0) goto cleanup; if ((ret =3D qemuDomainAttachDeviceConfig(vmdef, dev, caps, parse_flags, @@ -8539,7 +8546,8 @@ qemuDomainAttachDeviceLiveAndConfig(virDomainObjPtr v= m, } =20 if (flags & VIR_DOMAIN_AFFECT_LIVE) { - if (virDomainDefCompatibleDevice(vm->def, dev_copy, NULL) < 0) + if (virDomainDefCompatibleDevice(vm->def, dev_copy, NULL, + VIR_DOMAIN_DEVICE_ACTION_ATTACH) = < 0) goto cleanup; =20 if ((ret =3D qemuDomainAttachDeviceLive(vm, dev_copy, driver)) < 0) --=20 2.16.4 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list