Mutexes and error checking
Daniel Eischen
deischen at freebsd.org
Tue Jul 23 16:45:18 UTC 2013
On Tue, 23 Jul 2013, Joe Marcus Clarke wrote:
> On 7/23/13 11:43 AM, Martin Simmons wrote:
>>>>>>> On Sun, 21 Jul 2013 16:52:08 -0400, Joe Marcus Clarke said:
>>>
>>> The specifics are this. There are some GNOME/GTK+/GLib apps that are
>>> crashing now that GLib checks the return of pthread_mutex_unlock() in
>>> g_mutex_unlock(). While we can workaround this in GLib by simply
>>> nop'ing the EPERM return, we'd like to pursue something that may be a
>>> bit more manageable for those apps written for Linux that do not use GLib.
>>
>> Which apps are broken and why can't they be fixed?
>
> Koop, do you have a complete list? The one that was reported to me was
> sonata (a Python app). I have not yet traced down the offending code as
> I was curious why Linux was not failing, and this appears to be why.
FYI, here is a very lighty tested patch that allows an unlock on
a PTHREAD_MUTEX_NORMAL mutex by a non-owning thread:
http://people.freebsd.org/~deischen/libthr_mutex_normal.diffs
I do not argue for or against this behavior in making this patch,
as I can see both sides of the argument.
--
DE
More information about the freebsd-threads
mailing list