]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: don't release network actual device twice
authorRoopa Prabhu <roprabhu@cisco.com>
Thu, 17 Nov 2011 02:34:32 +0000 (18:34 -0800)
committerEric Blake <eblake@redhat.com>
Mon, 21 Nov 2011 21:42:33 +0000 (14:42 -0700)
For direct attach devices, in qemuBuildCommandLine, we seem to be freeing
actual device on error path (with networkReleaseActualDevice). But the actual
device is not deleted.

qemuProcessStop eventually deletes the direct attach device and releases
actual device. But by the time qemuProcessStop is called qemuBuildCommandLine
has already freed actual device, leaving stray macvtap devices behind on error.
So the simplest fix is to remove the networkReleaseActualDevice in
qemuBuildCommandLine. This patch does just that.

Signed-off-by: Roopa Prabhu <roprabhu@cisco.com>
src/qemu/qemu_command.c

index 267358899d96680c34effb47083d4bc1b8eef11d..85b34bb0ed2bda41641bbb665d48f6a465680419 100644 (file)
@@ -5432,8 +5432,6 @@ qemuBuildCommandLine(virConnectPtr conn,
     virReportOOMError();
  error:
     /* free up any resources in the network driver */
-    for (i = 0 ; i < def->nnets ; i++)
-        networkReleaseActualDevice(def->nets[i]);
     for (i = 0; i <= last_good_net; i++)
         virDomainConfNWFilterTeardown(def->nets[i]);
     virCommandFree(cmd);