I have one generic question.
I know it is not a new problem, and it is not necessarily something
worth investing time and code on, but what if the admin
(directly or indirectly by activating some features)
changes the interface configuration in between a BEGIN and
a ROLLBACK with commands that do not go through virsh/libvirtd?
Would ROLLBACK rollback those changes too?
Does it make sense for libvirtd to subscribe to the relevant
Netlink multicast groups to listen for such changes and flag
an interface as "tainted" in such case? This way it may
be able to generate a log or ask for a sort of extra "--force"
parameter for the ROLLBACK case.
/Christian
-----Original Message-----
From: libvir-list-bounces(a)redhat.com [mailto:libvir-list-
bounces(a)redhat.com] On Behalf Of Laine Stump
Sent: Thursday, May 19, 2011 1:51 PM
To: libvir-list(a)redhat.com
Subject: [libvirt] [PATCHv2 0/7] interface: new public API for
networkconfig change transactions
(I'm sending v2 of this patch series for Michal Privoznik, as I had to
tweak some things while integrating with the netcf part that I'm
writing, and he will be out of the office tomorrow and thus unable to
resend. In addition to the few small things I needed to change to make
everything compile and work properly once the build system had a
version of netcf supporting the new API, Michal incorporated all the
comments from reviewers of the first version before forwarding the
patches to me for integration.)
This patch series implements three new APIs for the interface
driver which support transactional changes to the host's network
config - at any point you can begin a transaction (which saves a
snapshot of the current config), then make any changes you like to the
config, and later either commit those changes (the current
implementation just removes the snapshotted files) or rollback to the
original config.
The actual implementation of this functionality lives in the netcf
library; these patches create pass-through functions that call out to
netcf on the machine that's running libvirtd.
Most importantly, note that uses of "start" in the API names have been
changed to "begin", and rather than a single virsh command with
multiple subcommands, there are now three separate commands:
iface-begin, iface-commit, and iface-rollback.
Thanks to using AC_CHECK_LIB in configure.ac, this code can safely be
pushed and built on systems that don't yet have a new enough netcf to
contain the API extensions - those functions are simply not
implemented in that case (and return the appropriate error).
--
libvir-list mailing list
libvir-list(a)redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list