[libvirt] PATCH: 14/25: Xen thread safety

Richard W.M. Jones rjones at redhat.com
Thu Jan 15 17:29:12 UTC 2009


On Tue, Jan 13, 2009 at 05:44:21PM +0000, Daniel P. Berrange wrote:
> This patch makes the various Xen drivers threadsafe by adding a
> mutex lock on the xenUnifiedPrivatePtr object. The XenD driver
> does not really need much locking, since it usually just calls
> out to XenD. Likewise the Xen driver just makes hypercalls. Locks
> are needed for libxenstore access, and the xm/inotify drivers
> since they have shared state
> 
>  src/proxy_internal.c  |  173 ++++++++++++++++-----------------
>  src/xen_inotify.c     |   25 +++-
>  src/xen_internal.c    |   29 +++--
>  src/xen_unified.c     |  176 +++++++++++++++++++++-------------
>  src/xen_unified.h     |   36 +++++--
>  src/xend_internal.c   |   37 ++++++-
>  src/xm_internal.c     |  256 +++++++++++++++++++++++++++++++++-----------------
>  src/xs_internal.c     |  130 +++++++++++++++++++------
>  src/xs_internal.h     |    7 -
>  tests/sexpr2xmltest.c |   19 +++
>  10 files changed, 575 insertions(+), 313 deletions(-)
> +  /* Many puppies died to bring you this code. */

This code makes my head spin ...  Looks reasonable, but to be honest I
would _only_ trust automated verification that the locks are being
acquired and dropped correctly, and the structure elements are only
being used while locks are acquired.  The CIL stuff is doing that?

Rich.

-- 
Richard Jones, Emerging Technologies, Red Hat  http://et.redhat.com/~rjones
virt-df lists disk usage of guests without needing to install any
software inside the virtual machine.  Supports Linux and Windows.
http://et.redhat.com/~rjones/virt-df/




More information about the libvir-list mailing list