X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-2.6 required=5.0 tests=AWL,BAYES_00,KHOP_THREADED,RCVD_IN_HOSTKARMA_NO,SPF_NEUTRAL,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Message-ID: <4FDA3FE1.6070604@cornell.edu> Date: Thu, 14 Jun 2012 15:47:45 -0400 From: Ken Brown User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20120428 Thunderbird/12.0.1 MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: Performance problems with emacs-X11 in current cygwin References: <4FCB2991 DOT 3010701 AT users DOT sourceforge DOT net> <4FCB5438 DOT 7080903 AT cornell DOT edu> <4FCB9872 DOT 5010506 AT cornell DOT edu> <4FD1F709 DOT 4050107 AT cornell DOT edu> <87k3zhbyyk DOT fsf AT Rainer DOT invalid> <4FD22C39 DOT 6070107 AT cornell DOT edu> <4FD53FA9 DOT 2040105 AT cornell DOT edu> <4FD8DE9C DOT 1090900 AT cornell DOT edu> <4FD90105 DOT 7050701 AT cornell DOT edu> <20120613214043 DOT GA3554 AT ednor DOT casa DOT cgf DOT cx> <4FDA3917 DOT 20309 AT cs DOT utoronto DOT ca> In-Reply-To: <4FDA3917.20309@cs.utoronto.ca> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-PMX-CORNELL-SPAM-CHECKED: Pawpaw X-Original-Sender: kbrown AT cornell DOT edu - Thu Jun 14 15:47:47 2012 X-PMX-CORNELL-REASON: CU_White_List_Override X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On 6/14/2012 3:18 PM, Ryan Johnson wrote: > On 13/06/2012 5:40 PM, Christopher Faylor wrote: >> 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 >>>>> 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! > ++ > > Amazing. This is one of the nastier kinds of bugs I've seen anybody > track down... Thanks. I actually enjoyed learning some new things, though it was frustrating at times. Ken -- 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