http://bugs.winehq.org/show_bug.cgi?id=31406
--- Comment #41 from Rico kgbricola@web.de 2012-09-11 02:58:11 CDT --- The patch "Use separate locking for libxcb poll()" works fine for my test case (as the other two patches - sorry for the wrong test results). The speed looks nearly the same as without the patch.
Thought, I'd probably destroy the mutex:
diff --git a/src/xcb_conn.c b/src/xcb_conn.c index 7979491..8be1849 100644 --- a/src/xcb_conn.c +++ b/src/xcb_conn.c @@ -313,6 +314,7 @@ void xcb_disconnect(xcb_connection_t *c) close(c->fd);
pthread_mutex_destroy(&c->iolock); + pthread_mutex_destroy(&c->pllock); _xcb_in_destroy(&c->in); _xcb_out_destroy(&c->out);