>> If desired, a later patch can add hooks >> (either a new XML element, or a new command comparable to autostart >> that can toggle the state of a hidden field associated with domains) >> so that virDomainCreate() can also be used to start a paused domain, >> but that will be more invasive. > > IMHO we really need to make this work for both APIs. The fact > that VDSM only uses virDomainCreateXML is an application specific > use case & not something we should be relying on. Since the > virDomainCreate() API lacks a flags parameter, we need to define > a new API virDomainCreateFlags() which it adds it. That lets us > get parity of functionality between transient and persistent > guests. > > This series looks ok, but I'd like the other API implemented before > we commit this. Here we go - my first attempt at an API addition patch. More comments in some of the various patches. Also, note that I'm including a 6/5 for any discussion, but which should not be considered part of the series to be pushed. Eric Blake (6): libvirt: introduce domainCreateWithFlags API remote: protocol implementation for virDomainCreateWithFlags drivers: add virDomainCreateWithFlags if virDomainCreate exists qemu: support starting persistent domain paused virsh: add start --paused support [DON'T APPLY] remote: optimize remoteDomainCreate daemon/remote.c | 27 ++++++++++++++++++ daemon/remote_dispatch_args.h | 1 + daemon/remote_dispatch_prototypes.h | 8 +++++ daemon/remote_dispatch_ret.h | 1 + daemon/remote_dispatch_table.h | 5 +++ include/libvirt/libvirt.h.in | 2 + src/driver.h | 6 +++- src/esx/esx_driver.c | 11 ++++++- src/libvirt.c | 45 +++++++++++++++++++++++++++++- src/libvirt_public.syms | 6 ++++ src/lxc/lxc_driver.c | 21 ++++++++++++- src/opennebula/one_driver.c | 10 ++++++- src/openvz/openvz_driver.c | 11 ++++++- src/phyp/phyp_driver.c | 1 + src/qemu/qemu_driver.c | 26 +++++++++++++---- src/remote/remote_driver.c | 53 +++++++++++++++++++++++++++++++++++ src/remote/remote_protocol.c | 20 +++++++++++++ src/remote/remote_protocol.h | 16 ++++++++++ src/remote/remote_protocol.x | 14 ++++++++- src/remote_protocol-structs | 7 ++++ src/test/test_driver.c | 9 +++++- src/uml/uml_driver.c | 8 ++++- src/vbox/vbox_tmpl.c | 9 +++++- src/xen/xen_driver.c | 11 ++++++- src/xenapi/xenapi_driver.c | 20 ++++++++++++- tools/virsh.c | 9 +++++- tools/virsh.pod | 7 +++- 27 files changed, 339 insertions(+), 25 deletions(-) -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list