[Bug 1976] libXRandR has deadlock problems with threads enabled
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Fri Dec 3 10:11:48 PST 2004
Please do not reply to this email: if you want to comment on the bug, go to
the URL shown below and enter yourcomments there.
https://bugs.freedesktop.org/show_bug.cgi?id=1976
daniel at freedesktop.org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jim.gettys at hp.com,
| |keithp at keithp.com
Status|REOPENED |ASSIGNED
------- Additional Comments From daniel at freedesktop.org 2004-12-03 10:11 -------
The problem here is that XextAddDisplay and friends are *totally* not
threadsafe, so we can't call them with the lock held. The really quick and
nasty hack:
XRRScreenConfiguration *XRRGetScreenInfo (Display *dpy, Window window)
{
XRRScreenConfiguration *config;
XRRFindDisplay(dpy);
LockDisplay (dpy);
config = _XRRGetScreenInfo(dpy, window);
UnlockDisplay (dpy);
SyncHandle ();
return config;
}
(note the new XRRFindDisplay call, so AddDisplay gets called without the lock
being held, if needed.)
I suspect the better long-term solution would be to do like
Xrender/Xcomposite/et al, and re-implement these functions ourselves; Keith,
Jim, input?
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
More information about the xorg-bugzilla-noise
mailing list