Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Wed, 22 Oct 2014 14:33:01 +0800
From: 黄建忠 <jianzhong.huang@...oft.com.cn>
To: musl@...ts.openwall.com, Rich Felker <dalias@...c.org>
Subject: musl pthread/tls issue.

Hi, Rich and all.

These days, I finished build a bootable x86_64 system(rpm based) include
musl/systemd/dracut/gcc-4.9.1/gcc-5/clang-3.5 and wayland/Xorg and the
whole GNOME-3.14 desktop(except webkit js segfault issue I mentioned
before) with a lot of patches(I will release all of them someday until
it reach a stable state.)

After a simple try, I found gnome-shell will segfault If I triggered the
app list(not always but often).

The dmesg report "pool [<some pid>] segfault xxxxxxxxxxx
libpixman-xxxxx", That's to say, it segfault in pixman library(A common
library used by Xorg and cairo),
gdb report it's a thread issue(a thread of gnome-shell) and segfault at
the beginning of general_composite_rect function in pixman-general.c,
the pointer of argument can not be accessed.

And after a quick look, the problem is in pixman-compiler.h, it defined
TLS related codes and macros according to specific
implementation(win32/mingw/pthread and so on).
By default, the TLS codes will be compiled, if it was disabled, there is
still a pthread fallback use 'pthread_key_create' and other pthread funcs.

Here is the link to it:
http://cgit.freedesktop.org/pixman/tree/pixman/pixman-compiler.h, please
look at the TLS section.

That's to say, there must be a problem exist in musl pthread/tls
implementation and can be triggered under certain circumstances. Please
help to solve it.

Related components:
Kernel: linux-3.17.0 without patch.
binutils: 2.24.90 without patch.
Compiler: gcc-5 and clang-3.5. with musl-enable patch.
Pixman: 0.32.6 git
Cairo: 1.14.0
Mesa: 10.3.1 stable
Xorg: 1.16.1 stable
gnome: 3.14 stable




-- 
Huang JianZhong

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.