Bizarre pour les fichiers TRACE, tu as un fichier par processus, celui qui a fait un segfault doit avoir à la fin marqué segfault…
Sinon, le assume ne fonctionne pas vu que les librairies tls sont utilisés. Le TLS (Thread Local Storage) est une nouvelle gestion des données des threads et pose parfois problème, des segfaults. Mon idée est de forcer le serveur à ne pas les utiliser:
Une méthode brutale MAIS osée peut être de temporairement renommer /lib/tls,
Regarde ci dessous:
bling:/tmp# mv /lib/tls /lib/tos
bling:/tmp# ldd hlds_i686
linux-gate.so.1 => (0xffffe000)
libdl.so.2 => /lib/libdl.so.2 (0xf7f9e000)
libpthread.so.0 => /lib/libpthread.so.0 (0xf7f4c000)
libm.so.6 => /lib/libm.so.6 (0xf7f27000)
libc.so.6 => /lib/libc.so.6 (0xf7e0c000)
/lib/ld-linux.so.2 (0xf7fad000)
bling:/tmp# mv /lib/tos /lib/tls
bling:/tmp# ldd hlds_i686
linux-gate.so.1 => (0xffffe000)
libdl.so.2 => /lib/tls/libdl.so.2 (0xf7f47000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0xf7f35000)
libm.so.6 => /lib/tls/libm.so.6 (0xf7f0f000)
libc.so.6 => /lib/tls/libc.so.6 (0xf7ddd000)
/lib/ld-linux.so.2 (0xf7f56000)
Tu vois la différence… Tu peux essayer mais les librairies tls ne seront plus visibles du système. Ça peut au moins de permettre de voir si le pbm est là.
Sinon, tu peux forcer le chargement de toutes les librairies concernées par le LD_PRELOAD. Ainsi, dans mon exemple, je fais dans le répertoire contenant les exécutables:
J’obtiens des erreurs qui m’indiffèrent et ceci:
/lib/tls/libc.so.6
/lib/tls/libdl.so.2
/lib/tls/libm.so.6
/lib/tls/libpthread.so.0
Je fais bling:/tmp# ls -l /lib/libc.so.6
lrwxrwxrwx 1 root root 13 2008-04-05 15:34 /lib/libc.so.6 -> libc-2.3.6.so
bling:/tmp# ls -l /lib/libdl.so.2
lrwxrwxrwx 1 root root 14 2008-04-05 15:34 /lib/libdl.so.2 -> libdl-2.3.6.so
bling:/tmp# ls -l /lib/libm.so.6
lrwxrwxrwx 1 root root 13 2008-04-05 15:34 /lib/libm.so.6 -> libm-2.3.6.so
bling:/tmp# ls -l /lib/libpthread.so.0
lrwxrwxrwx 1 root root 18 2008-04-05 15:34 /lib/libpthread.so.0 -> libpthread-0.10.so
J’ai donc les 4 librairies à charger en préambule, je fais donc
Essaye, théoriquement si ça plante, tu ne devrais pas avoir de message avec des /lib/tls/…
Par contre, le fait de forcer l’utilisation de ces librairies peut avoir des conséquences que j’ignore mais en général ça règle le pbm.