On Jul 2, 2010, at 11:43 PM, Jesse Barnes wrote:

On Tue, 29 Jun 2010 04:07:48 +0200
Mario Kleiner <[email protected]> wrote:
...
Then i think the idea of multiple wait queues doesn't allow to get
rid of IgnoreClient(), but we will still need those wait queues in
addition to IgnoreClient() to handle multiple blocking requests for
one drawable from different clients / x-connections correctly.

Right, we have lists in the server now too, so it shouldn't be too hard.

Another question: If i have separate x-connections, e.g., one for
each drawable and each connection has an opengl rendering context
attached to the drawable, then i assume these context still can share
state (display lists, shaders, texture objects, fbo's etc.), right?

Anything associated with the drawable would be shared, but context
specific information would still be separate per thread. Display lists
can be shared explicitly, likewise for some of the other objects, so
you should be able to get the sharing you want.


Good. I will switch our client toolkit to a 1 x-connection per thread model. If a wait queue implementation in the dri2 sync & swap bits hasn't magically shown up by the time i hit the limits of the current implementation, i'll give implementing it myself a try.

-mario

_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to