[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] A small issue with multiple xs_daemon_open



On 08/06/2010 11:41, "Ian Jackson" <Ian.Jackson@xxxxxxxxxxxxx> wrote:

> Rafal Wojtczuk writes ("[Xen-devel] A small issue with multiple
> xs_daemon_open"):
>> I am experiencing a problem when opening two simultaneous connections (in a
>> single process) to xenstored via xs_daemon_open(). I would think such
>> an operation is supported and should work (no static variables in
>> libxenstore are involved); is it a correct assumption ? If so, the issue
>> should be fixed.
> 
> This is definitely supposed to work.  But as you say there are no
> static variables in libxenstore (even in 3.4.3).  However, some
> threading bugs were fixed recently in xen-unstable changesets 21353,
> 21354 and 21374.  Do these look like they might be the cause ?

Yes, I backported these to 4.0.x but not to 3.4.x since noone had reported
problems. I've now backported the fixes as xen-3.4-testing:19982. They'll go
into Xen 3.4.4.

 -- Keir

> Ian.
> 
> changeset:   21374:9d53864d7be6
> user:        Keir Fraser <keir.fraser@xxxxxxxxxx>
> date:        Thu May 13 12:21:16 2010 +0100
> files:       tools/xenstore/xs.c
> description:
> xenstore: Fix cleanup_pop() definition for some (buggy) pthread.h headers.
> 
> Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
> 
> 
> changeset:   21354:9de69d816b11
> user:        Keir Fraser <keir.fraser@xxxxxxxxxx>
> date:        Wed May 12 08:49:13 2010 +0100
> files:       tools/xenstore/xs.c
> description:
> xs: avoid pthread_join deadlock in xs_daemon_close
> 
> Doing a pthread_cancel and join on the reader thread while holding all
> the request/reply/watch mutexes can deadlock if the thread needs to
> take any of those mutexes to exit.  Kill off the reader thread before
> taking any mutexes (which should be redundant if we're
> single-threaded at that point).
> 
> Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@xxxxxxxxxx>
> 
> 
> changeset:   21353:2dd3141b3e3e
> user:        Keir Fraser <keir.fraser@xxxxxxxxxx>
> date:        Wed May 12 08:48:14 2010 +0100
> files:       tools/xenstore/xs.c
> description:
> xs: make sure mutexes are cleaned up and memory freed if the read thread is
> cancelled
> 
> If the read thread is terminated with pthread cancel, it must make
> sure all memory is freed and mutexes are unlocked.
> 
> Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@xxxxxxxxxx>
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.