[Mesa-users] libGL and libOSMesa dispatch conflict issue on Fedora 14 build

Tyson Whitehead twhitehead at gmail.com
Wed Oct 5 08:37:25 PDT 2011


Hi All,

We have an VTK QT application that is being developed

https://github.com/patrickdemond/OVis

and it is segfaulting on Fedora 14.  I've traced the issue back to a dispatch 
issue in mesa that seems obviously wrong, however, I am not sure how it is 
suppose to be working so I don't know where to report the problem.

I'll describe the problem and hopefully someone can give me some guidance

0 - the Fedora 14 libraries are compiled with PTHREADS dispatch

1 - cmake creates an executable the first requires libOSMesa and then libGL

2 - both of these libraries have their own _gl_DispatchTSD symbol

2 - vtkXOpenGLRenderWindow calls glXCreateContext

3 - vtkXOpenGLRenderWindow calls glXMakeCurrent which
a - initializes and sets the pthread key in _gl_DispatchTSD in libGL to NULL
b - initializes and sets the pthread key in _gl_DispatchTSD in libOSMesa to 
the OSMesa tables

4 - calls to glMatrixMode and such go to libOSMesa as is the first dependency

5 - vtkXOpenGLRenderWindow calls glXGetProcAddressARB to get 1.4 functions
a - this goes to libGL as it is not defined in libOSMesa
b - it returns addresses of functions in libGL

6 - calls to these functions use the NULL key in _gl_DispatchTSD in libGL

7 - application segfaults

Are you suppose to be able to link against both libGL and libOSMesa?  Are the 
the Fedora 14 libraries built incorrectly?  Are the VTK libraries being built 
incorrectly?  Should this work?  Is it a mesa, a Fedora, or a VTK bug?

Any ideas where I should go would be greatly appreciated.

Thanks!  -Tyson


More information about the mesa-users mailing list