Broken TLS support in libGL.so AKA: software-center crashed with SIGSEGV in __cxa_allocate_exception()
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
mesa (Ubuntu) |
Fix Released
|
High
|
Chris Halse Rogers | ||
Natty |
Fix Released
|
High
|
Chris Halse Rogers | ||
software-center (Ubuntu) |
Fix Released
|
High
|
Gary Lasker | ||
Natty |
Fix Released
|
High
|
Gary Lasker |
Bug Description
Binary package hint: libgl1-mesa-dri
---
Software Center error description from apport is: software-center crashed with SIGSEGV in __cxa_allocate_
WORKAROUND for the software-center crash:
Launch Software Center from the command line as:
LD_
For more details about the software-center crash, please see bug 731724.
---
The package libgl1-mesa-dri in Intrepid seems to have been compiled with the option --enable-glx-tls. This triggers a bug in src/glx/
The TLS variable __glX_tls_Context is compiled with the TLS model initial-exec, which is only ment for executables. Used in shared libraries, it can break TLS usage in other shared libraries.
One example is when libGL is linked beforce libstdc++ in another library, which is then loaded via dlopen(). In this case, the TLS variables in libstdc++ aren't properly initialized, and it will segfault when trying to allocate an exception.
I think there are 2 possible solutions:
1. Do not compile with --enabgle-glx-tls
2. Patch mesa to remove the tls-model attribute. I assume this will eat up the performance gain of TLS, since initial-exec is meant as an optimisation for apps not using the GL over dlopen directly or indirectly.
Policy information about my libGL package:
libgl1-mesa-dri:
Installiert: 7.1~rc3-1ubuntu4
Kandidat: 7.1~rc3-1ubuntu4
Versions-Tabelle:
*** 7.1~rc3-1ubuntu4 0
500 http://
100 /var/lib/
Related branches
Changed in mesa (Ubuntu): | |
status: | Incomplete → Confirmed |
tags: | added: intrepid |
Changed in mesa (Ubuntu): | |
assignee: | nobody → Chris Halse Rogers (raof) |
importance: | Undecided → High |
status: | Confirmed → In Progress |
Changed in software-center (Ubuntu): | |
importance: | Undecided → High |
assignee: | nobody → Gary Lasker (gary-lasker) |
Changed in software-center (Ubuntu Natty): | |
status: | New → Triaged |
description: | updated |
description: | updated |
summary: |
- Broken TLS support in libGL.so + Broken TLS support in libGL.so AKA: software-center crashed with SIGSEGV + in __cxa_allocate_exception() |
Hi jonathan-sieber,
Thank you for taking the time to report this bug and helping to make Ubuntu better. You reported this bug a while ago and there hasn't been any activity in it recently. We were wondering is this still an issue for you? Can you try with the latest development release of Ubuntu? (ISOs are available from cdimage.ubuntu.com)
If it remains an issue, could you also attach a new /var/log/ Xorg.0. log?
Thanks in advance.
The output of lspci -vvnn would also be worth having.