Jurij Smakov <ju...@wooyd.org> writes:

> On Mon, Aug 8, 2022 at 9:50 AM Göran Weinholt <go...@weinholt.se> wrote:
>
>  @Jurij: What happens if you update your libc6, could you give it a try?
>  It would be good to get confirmation that the bug was in libc6.
>
> I can confirm that upgrading libc6 (in my case, to Debian's 2.34-3 package) 
> fixes the problem.

Thank you very much. There is the possibility that libc6 2.34 just hides
the problem. Adam Jackson wrote:

| glibc 2.34 merged several libraries into libc.so.6, including
| libpthread, which would probably explain that.

<https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues/157#note_1500695>

I have a suggested fix for libX11 here, which adds -pthread to the
compilation and linking commands:

<https://gitlab.freedesktop.org/weinholt/libx11/-/commit/a8d4cbc3a46e625c6c4fb4120d2fff56eebcf91c>

It seems harmless, but I've tested it very little.

The discussion is complicated a bit by the fact that there are clients
with genuine bugs (calls to libX11 during event processing), and other
clients that break just because they themselves don't build with
-pthread.

Either way, notion (and glxgears, etc) stopped working because Debian sid
for a short while had glibc 2.33 and a libx11 that called XInitThreads()
without using -pthread, resulting in pthread mutexes being used when
uninitialized.

Regards,

-- 
Göran Weinholt   | https://weinholt.se/
Debian Developer | 73 de SA6CJK

Reply via email to