
On Mon, Feb 11, 2013 at 04:47:29PM +0000, Daniel P. Berrange wrote:
From: "Daniel P. Berrange" <berrange@redhat.com>
With the majority of fields in the virQEMUDriverPtr struct now immutable or self-locking, there is no need for practically any methods to be using the QEMU driver lock. Only a handful of helper APIs in qemu_conf.c now need it
BTW, example of the performance improvements this brings With the 0.10.2 release of libvirt, running 4 threads in parallel, each starting + stopping 50 VMs, takes 2 mins 11 seconds. This is on a 2 CPU machine. I'd expect the win to be even greater on a machine with more CPUs. In terms of testing, I am using a torture test which runs multiple threads, each creating+destroying VMs in parallel. I've successfully run this for over 5000 VM create+delete pairs so far, without any issues (it has previously detected a few crashes and deadlocks during my earlier testing of previous versions of this patch). Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|