This Red Hat bug: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=134930 is about clients freezing when using Xinerama and 16 bit fonts at the same time. What is actually going on is that Xinerama is implemented by issuing an ImageText16 on more than one screen. This causes both calls to try and fetch the font from the font server, causing ClientSleep() to be called twice. However, when the font finally arrives, the client awoken only once.
See also https://bugzilla.mozilla.org/show_bug.cgi?id=136362
Sorry about the phenomenal bug spam, guys. Adding xorg-team@ to the QA contact so bugs don't get lost in future.
Any suggestions on the right way to fix this? I've been bitten by freezing xterms for years and would like to try to find a resolution.
definitely not going to be fixed for 1.7/7.5.
Should be fixed in xserver 1.9: commit 3ab6cd31cbdf8095b2948034fce5fb645422d8da Author: Adam Jackson <ajax@redhat.com> Date: Mon Aug 9 15:20:20 2010 -0400 fonts: Fix refcounting for asynchronous font operations (#3040) When doing Xinerama, we'll dispatch font ops across all backend screens. If using a font server (such that some operations can sleep), we'll put the client to sleep once for each screen, but only wake up once, because we're trying to keep track of the sleep count in _each_ screen's closure. Instead, just ask the core whether the client is already asleep. Signed-off-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Keith Packard <keithp@keithp.com>
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.