On 5 May 2017 at 17:58, gregory hainaut <[email protected]> wrote: > On Fri, 5 May 2017 17:45:01 +0200 > Axel Davy <[email protected]> wrote: > >> Hi, >> >> There should be very few X11 calls while rendering (basically only at >> the beginning or end of a frame). >> >> Why not just always run these calls in the main thread (and wait for >> glthread work to finish) ? >> >> That's basically what we do for gallium nine. >> >> Yours, >> >> Axel > > 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 _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
