This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Performance problems with emacs-X11 in current cygwin


On Wed, Jun 13, 2012 at 05:07:17PM -0400, Ken Brown wrote:
>On 6/13/2012 2:40 PM, Ken Brown wrote:
>> On 6/10/2012 8:45 PM, Ken Brown wrote:
>>> The bisection shows that the first problematic commit is this one:
>>>
>>> http://git.gnome.org/browse/glib/commit/?h=glib-2-32&id=7eae486179e2799c369ed9ffcea663bf9161ce79
>>>
>>>
>>>
>>> Author: Ryan Lortie <desrt@desrt.ca>
>>> Date: Wed Aug 31 22:07:02 2011 -0400
>>>
>>> GMain: simplify logic for g_wakeup_acknowledge()
>>>
>>> Instead of messing around with context->poll_waiting, just look at the
>>> GPollFD to see if the GWakeup needs to be acknowledged.
>>
>> I think this commit contains a typo: "events" should be "revents".
>> (context->wake_up_rec.events is always nonzero at this point in the
>> code, so it makes no sense to test that.) As a result,
>> g_wakeup_acknowledge() is being called much more often than necessary. I
>> think this could easily explain the performance problems that have been
>> reported, but I won't have a chance to test this on my (slow) XP system
>> for a while, and possibly not until tomorrow.
>
>I've confirmed that fixing the typo solves the problem on my XP system. 
>  I suspect that this issue is not specific to XP after all and has more 
>to do with the slowness of the machine, so that the performance problem 
>is more noticeable.  In any case, it's clearly a glib bug.
>
>I've filed a bug report upstream:
>
>   https://bugzilla.gnome.org/show_bug.cgi?id=678052

What incredible perseverence you've shown in tracking this down.  Bravo!

cgf

P.S. I'm relieved and amazed that this didn't boil down to a Cygwin
bug.

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]