Since commit f14c37, virDomainConfVMNWFilterTeardown is reporting errors
thus any previously reported error gets overwritten.
We need to save the errors in qemuDomainAttachNetDevice before calling
this function when we are in cleanup code.
https://bugzilla.redhat.com/show_bug.cgi?id=1598311
Signed-off-by: Katerina Koukiou <kkoukiou@redhat.com>
---
src/qemu/qemu_hotplug.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
index 3dfa51b0a0..2e13cab233 100644
--- a/src/qemu/qemu_hotplug.c
+++ b/src/qemu/qemu_hotplug.c
@@ -793,6 +793,7 @@ qemuDomainAttachNetDevice(virQEMUDriverPtr driver,
bool charDevPlugged = false;
bool netdevPlugged = false;
char *netdev_name;
+ virErrorPtr save_error = NULL;
/* preallocate new slot for device */
if (VIR_REALLOC_N(vm->def->nets, vm->def->nnets + 1) < 0)
@@ -1074,7 +1075,9 @@ qemuDomainAttachNetDevice(virQEMUDriverPtr driver,
qemuDomainReleaseDeviceAddress(vm, &net->info, NULL);
if (iface_connected) {
+ virErrorPreserveLast(&save_error);
virDomainConfNWFilterTeardown(net);
+ virErrorRestore(&save_error);
if (virDomainNetGetActualType(net) == VIR_DOMAIN_NET_TYPE_DIRECT) {
ignore_value(virNetDevMacVLanDeleteWithVPortProfile(
--
2.15.0
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
On 07/13/2018 05:31 PM, Katerina Koukiou wrote: > Since commit f14c37, virDomainConfVMNWFilterTeardown is reporting errors > thus any previously reported error gets overwritten. > We need to save the errors in qemuDomainAttachNetDevice before calling > this function when we are in cleanup code. > > https://bugzilla.redhat.com/show_bug.cgi?id=1598311 > > Signed-off-by: Katerina Koukiou <kkoukiou@redhat.com> > --- > src/qemu/qemu_hotplug.c | 3 +++ > 1 file changed, 3 insertions(+) ACK Michal -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
On Fri, Jul 13, 2018 at 05:31:48PM +0200, Katerina Koukiou wrote: >Since commit f14c37, virDomainConfVMNWFilterTeardown is reporting errors >thus any previously reported error gets overwritten. >We need to save the errors in qemuDomainAttachNetDevice before calling >this function when we are in cleanup code. > >https://bugzilla.redhat.com/show_bug.cgi?id=1598311 > >Signed-off-by: Katerina Koukiou <kkoukiou@redhat.com> >--- > src/qemu/qemu_hotplug.c | 3 +++ > 1 file changed, 3 insertions(+) > >diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c >index 3dfa51b0a0..2e13cab233 100644 >--- a/src/qemu/qemu_hotplug.c >+++ b/src/qemu/qemu_hotplug.c >@@ -793,6 +793,7 @@ qemuDomainAttachNetDevice(virQEMUDriverPtr driver, > bool charDevPlugged = false; > bool netdevPlugged = false; > char *netdev_name; >+ virErrorPtr save_error = NULL; You can reuse the originalError variable that is used in the try_remove section. Jano > > /* preallocate new slot for device */ > if (VIR_REALLOC_N(vm->def->nets, vm->def->nnets + 1) < 0) >@@ -1074,7 +1075,9 @@ qemuDomainAttachNetDevice(virQEMUDriverPtr driver, > qemuDomainReleaseDeviceAddress(vm, &net->info, NULL); > > if (iface_connected) { >+ virErrorPreserveLast(&save_error); > virDomainConfNWFilterTeardown(net); >+ virErrorRestore(&save_error); > > if (virDomainNetGetActualType(net) == VIR_DOMAIN_NET_TYPE_DIRECT) { > ignore_value(virNetDevMacVLanDeleteWithVPortProfile( >-- >2.15.0 > >-- >libvir-list mailing list >libvir-list@redhat.com >https://www.redhat.com/mailman/listinfo/libvir-list -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
© 2016 - 2024 Red Hat, Inc.