EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: "epicsMutex pthread_mutex_unlock failed" with pyepics/pcaspy
From: Jameson Graef Rollins <[email protected]>
To: Michael Davidsaver <[email protected]>, [email protected], Wang Xiaoqiang (PSI) <[email protected]>
Date: Thu, 14 May 2015 10:53:55 -0700
On Wed, May 13 2015, Michael Davidsaver <[email protected]> wrote:
> In my experience, when pthread_mutex_unlock fails w/ EINVAL it is either
> a sign of memory corruption, or that the lock has already been free'd
> (w/ pthread_mutex_destory).
>
> Given that the process doesn't crash I'm guessing its the later.

The process doesn't crash, but the main thread becomes unresponsive.

> Is your application creating, or more importantly destroying, casPVI
> instances when this error appears?  A race during destruction would
> probably explain things.

Certainly not at the level I'm working.  I'm using the pcaspy interface
more or less as prescribed, where all of this kind of stuff is happening
under the hood.

I think I mentioned that this failure seems to be associated with the
severing of subscriptions, but only occasionally.  A race condition
associated with destruction of a casPVI sounds exactly right.  I wonder
if there's something I can do to trigger this directly.

Xiaoqiang, can you comment on what's going on under the hood in pcaspy?
Can I help diagnose further, so we can come up with a targeted fix?

jamie.

Attachment: signature.asc
Description: PGP signature


References:
"epicsMutex pthread_mutex_unlock failed" with pyepics/pcaspy Jameson Graef Rollins
Re: "epicsMutex pthread_mutex_unlock failed" with pyepics/pcaspy Jameson Graef Rollins
Re: "epicsMutex pthread_mutex_unlock failed" with pyepics/pcaspy Michael Davidsaver
Re: "epicsMutex pthread_mutex_unlock failed" with pyepics/pcaspy Jameson Graef Rollins
Re: "epicsMutex pthread_mutex_unlock failed" with pyepics/pcaspy Michael Davidsaver
Re: "epicsMutex pthread_mutex_unlock failed" with pyepics/pcaspy Jameson Graef Rollins
Re: "epicsMutex pthread_mutex_unlock failed" with pyepics/pcaspy Michael Davidsaver
Re: "epicsMutex pthread_mutex_unlock failed" with pyepics/pcaspy Jameson Graef Rollins
Re: "epicsMutex pthread_mutex_unlock failed" with pyepics/pcaspy Michael Davidsaver

Navigate by Date:
Prev: Argonne Network Maintenance on Saturday Andrew Johnson
Next: AreaDetector Interface for Dectris EIGER? Matthew D. Moore
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: "epicsMutex pthread_mutex_unlock failed" with pyepics/pcaspy Michael Davidsaver
Next: Re: "epicsMutex pthread_mutex_unlock failed" with pyepics/pcaspy Wang Xiaoqiang (PSI)
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 16 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·