Bug#903514: Deadlock in _dl_close join-ing threads accessing TLS (was Re: gimp won't launch)

Alexis Murzeau amubtdx at gmail.com
Fri Aug 10 22:27:50 BST 2018


On 09/08/2018 00:22, Alexis Murzeau wrote:
> On 08/08/2018 00:59, Alexis Murzeau wrote:
>> severity 903514 important
>> thanks
>>
>>> Reassigning to glibc with affects on openblas and gimp as this is caused
>>> by a deadlock inside glibc.
>>
>> Done.
>>
>> Lowering severity as this does not render any package unusable by
>> themselves, but only a combination of them (GIMP + OpenBLAS).
>>
>> I think a workaround solution against GIMP OpenBLAS should be done as
>> I'm not sure a good solution will emerge in glibc given attempts done in
>> the past. The work to be done seems non trivial.
>>
>> My though on possible solutions:
>>  * Add a breaks between GIMP and OpenBLAS
>>  * Disable TLS in OpenBLAS build (if possible, but this would cause a
>> performance loss for users that use OpenBLAS without gimp)
>>  * Add a delay in GIMP to not load then close libraries too fast (so
>> OpenBLAS threads are fully initialized when dl_close is called on it)
>>
> 
> Hi,
> 
> I've posted a issue on openblas upstream project [0] and they suggested
> some solutions.
> One of them is to disable the use of compiler supported TLS and instead
> use pthreads.
> 
> I tested this and it seems to fix deadlocks while starting gimp (I tried
> without arguments, with a non existing file and with an existing file).
> 
> I've pushed a merge request with the patch at [1].
> I've also asked openblas upstream if this patch could be a good solution.
> 
> In that case would it be possible to have this patch tested for ones who
> have major instabilities with gimp + openblas ?
> 
> Thanks :)
> 

Hi,

I've updated the merge request [0] with the upstream proposed patch [1].

@openblas maintainers, maybe someone can build a package with this patch
and upload to experimental so others can check if gimp works fine with it ?

I've myself tested it and gimp does not deadlock.

I can provide a binary package that include this patch, but I'm not sure
this is the best thing to do (I'm not the official maintainer, nor know
a good place to upload it).

[0] https://salsa.debian.org/science-team/openblas/merge_requests/1
[1] https://github.com/xianyi/OpenBLAS/pull/1726

-- 
Alexis Murzeau
PGP: B7E6 0EBB 9293 7B06 BDBC  2787 E7BD 1904 F480 937F

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/debian-science-maintainers/attachments/20180810/98e306ec/attachment-0001.sig>


More information about the debian-science-maintainers mailing list