On 03/13/2014 01:13 PM, Cole Robinson wrote: > Just skip the vhost command line generation, since this won't work if > attempting to run manually. > --- > src/qemu/qemu_command.c | 15 +++++++++------ > 1 file changed, 9 insertions(+), 6 deletions(-) > > diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c > index 755a72a..bf7fb12 100644 > --- a/src/qemu/qemu_command.c > +++ b/src/qemu/qemu_command.c > @@ -7521,7 +7521,8 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd, > virQEMUCapsPtr qemuCaps, > int vlan, > int bootindex, > - enum virNetDevVPortProfileOp vmop) > + enum virNetDevVPortProfileOp vmop, > + bool forXMLToArgv) Ah, *now* I understand why you used that name - you're using it to indicate multiple behavior changes that coincidentally are needed when calling for XMLtoNative. Thinking... thinking... So a more generic way of describing this is that you want a commandline that will be runnable standalone, not requiring/supporting all the setup done by libvirt when it will be running the command itself. So maybe name it "standalone"? Beyond that, now I'm wondering, *is* the purpose of xml-to-native to generate something the user can run standalone? Or is it to give them a simple way to see the exact command that libvirt would have run to start this domain? If the former, then ACK to both this and 1/3 (but maybe give another thought to the name for the bool). If the latter, then maybe we shouldn't be doing this series anyway... > { > int ret = -1; > char *nic = NULL, *host = NULL; > @@ -7579,10 +7580,11 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd, > goto cleanup; > } > > - if (actualType == VIR_DOMAIN_NET_TYPE_NETWORK || > - actualType == VIR_DOMAIN_NET_TYPE_BRIDGE || > - actualType == VIR_DOMAIN_NET_TYPE_ETHERNET || > - actualType == VIR_DOMAIN_NET_TYPE_DIRECT) { > + if ((actualType == VIR_DOMAIN_NET_TYPE_NETWORK || > + actualType == VIR_DOMAIN_NET_TYPE_BRIDGE || > + actualType == VIR_DOMAIN_NET_TYPE_ETHERNET || > + actualType == VIR_DOMAIN_NET_TYPE_DIRECT) && > + !forXMLToArgv) { > /* Attempt to use vhost-net mode for these types of > network device */ > vhostfdSize = net->driver.virtio.queues; > @@ -8759,7 +8761,8 @@ qemuBuildCommandLine(virConnectPtr conn, > vlan = i; > > if (qemuBuildInterfaceCommandLine(cmd, driver, conn, def, net, > - qemuCaps, vlan, bootNet, vmop) < 0) > + qemuCaps, vlan, bootNet, vmop, > + forXMLToArgv) < 0) > goto error; > last_good_net = i; > bootNet = 0; -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list