On Fri, 5 May 2017 18:17:22 +0100 Emil Velikov <emil.l.veli...@gmail.com> wrote:
> On 5 May 2017 at 17:58, gregory hainaut <gregory.hain...@gmail.com> wrote: > > On Fri, 5 May 2017 17:45:01 +0200 > > Axel Davy <axel.d...@normalesup.org> wrote: > > > [...] > > > > Hello Axel, > > > > Yes it is another possibility. It would requires to track gl calls that end > > up in X11. > > I'm not sure if there is an easy way to list all those gl functions. There > > are at least the > > draw calls and maybe the clear operations. Besides I'm afraid that we will > > need to handle > > various corner cases of the OpenGL API. It is doable but likely more > > complicated. > > > > There is also the Nvidia way, i.e. forces the driver to XInitThreads X11. I > > think it > > can be implemented with the help of constructor attribute. > > > Did you trace the above behaviour? What would happen in the following > scenario: > - There is no link against libGL/libEGL > - User gets the dpy primitive w/o calling XInitThreads > - Then user dlopens libGL/libEGL, which in itself calls XInitThreads > At that point it's a bit too late isn't it? > > -Emil Hello, No I didn't trace it. You right, it is too late. You can/must use LD_PRELOAD to ensure that libGL/libEGL is loaded first. To be honest, the best solution will be to have a thread safe Xlib. No more hack everywhere. Cheers, Gregory _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev