On 11/21/2013 08:45 AM, Daniel P. Berrange wrote:
On Tue, Nov 19, 2013 at 04:43:12PM +0100, Cédric Bosdonnat wrote:
> These changes are all about bringing events for network object like the
> ones existing for domains. This feature is needed for virt-manager to
> refresh its UI when networks are started/destroyed/defined/undefined.
Nit-pick virt-manager should already be refreshing its UI, but it will
do it by polling for updates every N seconds. The events would simply
allow it to be more efficient avoiding the need to poll for changes.
Actually in latest git I dropped polling of non-domain objects on every tick.
We obviously poll on initial libvirt open(), but after that we only refresh
our net/storage/iface state when something calls for it, like creating a new
network, redefining and interface, etc.
I figured in practice very few people were depending on it, it saves us tons
of network traffic and CPU cycles, and if state gets out of sync there's a
workaround of just disconnecting/reconnecting to libvirt.
But event support for non-domain objects are obviously the correct solution
for that problem, and this patch set is a great start.
- Cole