public inbox for cygwin-xfree@sourceware.org
help / color / mirror / Atom feed
From: Jon TURNEY <jon.turney@dronecode.org.uk>
To: cygwin-xfree@cygwin.com
Cc: kbrown@cornell.edu
Subject: Re: Slow response to keypresses in xorg-server-1.8.0-1
Date: Wed, 30 Jun 2010 17:40:00 -0000	[thread overview]
Message-ID: <4C2B8171.5020409@dronecode.org.uk> (raw)
In-Reply-To: <4BDDE5F1.9080204@cornell.edu>

On 02/05/2010 21:52, Ken Brown wrote:
> On 5/1/2010 9:49 AM, Ken Brown wrote:
>> I'm often seeing a very slow response to keypresses under
>> xorg-server-1.8.0-1. The problem is intermittent, but it always happens
>> within a few minutes after starting the server (via the start menu
>> shortcut or a slight variant). Here are some examples:
>>
>> 1. Switching windows with Alt-Tab sometimes takes up to 15 seconds or
>> doesn't work at all (i.e., I get tired of waiting to see if the focus is
>> ever going to switch).
>>
>> 2. When using 'less' to view a file in an xterm window, there is
>> sometimes a delayed response to 'space' or 'q'.
>>
>> 3. When viewing a directory in emacs-X11, pressing 'v' to start viewing
>> a file can sometimes result in a long delay, pressing 'space' to scroll
>> in view mode can be slow, and pressing 'q' to exit view mode can be slow.
>>
>> In some of these cases, I sometimes don't get a response to the first
>> keypress until I press a second key. For example, if I'm viewing a file
>> with 'less', I may press 'q' and get no response. Then pressing 'q' a
>> second time exits 'less' and also produces an echoed 'q' in xterm.
>> Similarly, I'll sometimes press a key, see no echo, and then get two
>> characters echoed at once after pressing a second key.
>>
>> Reverting to xorg-server-1.7.6-2 solves the problem.
>>
>> I'm attaching cygcheck output and an XWin log.
>
> I found a test case that I can reproduce reliably on my system.
>
> 1. With no .Xdefaults or .startxwinrc, start the X server via the start
> menu shortcut.
>
> 2. Start xfig (with 'xfig &' in the xterm window).
>
> 3. Repeatedly press Alt-Tab to switch between the xterm and xfig
> windows. At some point the focus fails to switch. When this happens,
> press Alt and the focus switches.

Thanks for the clear reproduction steps.  And thanks to the other reporters of 
this problem :-)

This is fallout from a change [1] to the way we process Windows messages to 
handle large bursts of them overflowing the Xserver's internal event queue.

It seems that sometimes /dev/windows doesn't seem ready to select() even when 
there is still Windows messages to process.  I can't quite understand how this 
happens.  I don't think this is a bug in cygwin, but probably something subtle 
to do with message ordering and nonqueued messages (like WM_ACTIVATE).

Anyhow, I've cooked up a small additional change which should prevent this 
blocking behaviour and uploaded a build [2]. It seems to resolve the problem 
in this specific case. Perhaps you could try it out and see if it helps?

[1] http://cygwin.com/ml/cygwin-xfree/2010-02/msg00124.html
[2] ftp://cygwin.com/pub/cygwinx/XWin.20100630-git-bc2f74e105146c36.exe.bz2

-- 
Jon TURNEY
Volunteer Cygwin/X X Server maintainer

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://x.cygwin.com/docs/
FAQ:                   http://x.cygwin.com/docs/faq/


  parent reply	other threads:[~2010-06-30 17:40 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-01 13:49 Ken Brown
2010-05-02 20:52 ` Ken Brown
2010-05-18 18:52   ` Ryan Johnson
2010-06-30 17:40   ` Jon TURNEY [this message]
2010-07-01  2:02     ` Ken Brown
2010-07-01 21:07     ` Marco Atzeri
2010-07-19 14:11     ` Simon Marlow
2010-08-03 16:43     ` Ryan Johnson
2010-08-05 18:53     ` Laurent Montaron
2010-08-07 15:39       ` Reini Urban
2010-08-07 22:07         ` Jon TURNEY
2010-08-08 11:05           ` Andy Koppe
2010-08-29 14:17             ` /dev/windows and select() [was Re: Slow response to keypresses in xorg-server-1.8.0-1] Jon TURNEY
2010-08-29 14:41               ` Corinna Vinschen
2010-08-29 14:50                 ` Corinna Vinschen
2010-08-29 15:09                   ` Corinna Vinschen
2010-08-30 11:23                     ` Trollope, David
2010-08-30 12:05               ` Corinna Vinschen
2010-08-30 12:33                 ` Jon TURNEY
2010-05-20 23:26 Slow response to keypresses in xorg-server-1.8.0-1 J. Offerman
2010-06-02 16:52 Tony Hammitt
2010-06-10 16:42 Joseph Ess
2010-06-29 20:40 Robert Daasch
2010-07-01 20:49 Leigh Orf
2010-07-01 21:24 ` Larry Hall (Cygwin X)
2010-07-19 14:52 Angelo Graziosi
2010-07-19 15:45 ` Simon Marlow
2010-07-19 23:01   ` Angelo Graziosi
2010-07-20  8:07     ` Simon Marlow
2010-07-20  8:43       ` Angelo Graziosi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4C2B8171.5020409@dronecode.org.uk \
    --to=jon.turney@dronecode.org.uk \
    --cc=cygwin-xfree@cygwin.com \
    --cc=kbrown@cornell.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).