The following patchset introduces code to defer setting netdevs online
(and therefore registering MACs) until right before beginning guest
CPU execution. The first patch introduces some infrastructure changes
in preparation of the actual function added in the 2nd patch.
Associated BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1081461
Changes since RFC:
* Add a separate patch to introduce a flags field for macvlan/macvtap
creation.
* Use macvlan/tap IFUP flags to skip virNetDevSetOnline (for qemu only).
* Add hotplug support.
* For macvlan, save the current virNetDevVPortProfileOp in virDomainNetDef
during qemuPhysIfaceConnect. As Laine mentioned, could use this field in
a future patch to eliminate passing virNetDevVPortProfileOp everywhere.
* Add qemu_interface.c and qemu_interface.h to encapsulate new functions.
Matthew Rosato (2):
util: Introduce flags field for macvtap creation
network: Bring netdevs online later
src/Makefile.am | 1 +
src/conf/domain_conf.h | 2 ++
src/lxc/lxc_process.c | 3 +-
src/qemu/qemu_command.c | 9 ++++--
src/qemu/qemu_hotplug.c | 7 +++++
src/qemu/qemu_interface.c | 65 +++++++++++++++++++++++++++++++++++++++++++
src/qemu/qemu_interface.h | 33 ++++++++++++++++++++++
src/qemu/qemu_process.c | 4 +++
src/util/virnetdevmacvlan.c | 32 +++++++++++++--------
src/util/virnetdevmacvlan.h | 10 ++++++-
10 files changed, 150 insertions(+), 16 deletions(-)
create mode 100644 src/qemu/qemu_interface.c
create mode 100644 src/qemu/qemu_interface.h
--
1.7.9.5