Mail Archives: cygwin/2012/06/14/15:48:17
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<desrt AT desrt DOT 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!
> ++
>
> 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
- Raw text -