100% CPU after resume

43 views
Skip to first unread message

Sean Dague

unread,
Apr 18, 2011, 6:44:45 PM4/18/11
to gnom...@googlegroups.com
Relatively frequently (like every couple of days), when I resume my
laptop gnome-do will go to 100%+ CPU and stay there until I kill it. I
typically only notice it after my fan has pegged on my laptop (or worse,
after it's been doing it for an hour draining my battery).

Is there any suggestions on what might be causing this, or how to debug it?

-Sean

--

Sean Dague Mid-Hudson Valley
sda...@gmail.com Linux Users Group
http://dague.net http://mhvlug.org

Joe Vanderstelt

unread,
Apr 18, 2011, 6:47:04 PM4/18/11
to gnom...@googlegroups.com

I have had the same problem killing gnome-do and restarting is the only fix I found

> --
> You received this message because you are subscribed to the Google Groups "GNOME Do" group.
> To post to this group, send email to gnom...@googlegroups.com.
> To unsubscribe from this group, send email to gnome-do+u...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/gnome-do?hl=en.
>

Robert Dyer

unread,
Apr 18, 2011, 7:02:11 PM4/18/11
to gnom...@googlegroups.com
On Mon, Apr 18, 2011 at 5:47 PM, Joe Vanderstelt
<thisboy...@gmail.com> wrote:
> I have had the same problem killing gnome-do and restarting is the only fix
> I found
>
> On Apr 18, 2011 6:44 PM, "Sean Dague" <sda...@gmail.com> wrote:
>> Relatively frequently (like every couple of days), when I resume my
>> laptop gnome-do will go to 100%+ CPU and stay there until I kill it. I
>> typically only notice it after my fan has pegged on my laptop (or worse,
>> after it's been doing it for an hour draining my battery).
>>
>> Is there any suggestions on what might be causing this, or how to debug
>> it?
>>
>> -Sean

If you do a:

kill -SIGQUIT <pid of gnome do>

it will dump a stack trace to the *original terminal* Do was started
from. If it auto-started, this should dump it into ~/.xsession-errors

That trace should give insights into what it is doing, and possibly
indicate which plugin (if any) is causing this so you can temporarily
disable it.

- Rob

Sean Dague

unread,
Jun 2, 2011, 6:27:52 AM6/2/11
to gnom...@googlegroups.com
On 04/18/2011 07:02 PM, Robert Dyer wrote:
> If you do a:
>
> kill -SIGQUIT<pid of gnome do>
>
> it will dump a stack trace to the *original terminal* Do was started
> from. If it auto-started, this should dump it into ~/.xsession-errors
>
> That trace should give insights into what it is doing, and possibly
> indicate which plugin (if any) is causing this so you can temporarily
> disable it.
>
> - Rob
>

Finally remembered to do this, here is what I'm getting. I'm not sure
how to parse this into a culprit.

"<unnamed thread>" tid=0x0xac588b70 this=0x0x2bd4b0 thread handle 0x420
state : interrupted state owns ()
at System.Collections.Generic.Dictionary`2<object, object>.set_Item
(object,object) <0x0009f>
at Do.Universe.ContactItem.set_Item (string,string) <0x000e7>
at
Do.Addins.Thunderbird.ThunderbirdContactItemSource.CreateThunderbirdContactItem
(System.Collections.Hashtable) <0x001ab>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource._UpdateItems ()
<0x000e4>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource.UpdateItems ()
<0x00017>
at Do.Universe.Safe.SafeItemSource.UpdateItems () <0x0001e>
at Do.Core.UniverseManager.ReloadSource
(Do.Universe.ItemSource,System.Collections.Generic.Dictionary`2<string,
Do.Universe.Item>) <0x000ca>
at Do.Core.UniverseManager.UniverseUpdateLoop () <0x0010e>
at (wrapper runtime-invoke) object.runtime_invoke_void__this__
(object,intptr,intptr,intptr) <0x00040>

"<unnamed thread>" tid=0x0xb74326f0 this=0x0x3eed8 thread handle 0x404
state : not waiting owns ()
at (wrapper managed-to-native) Gtk.Application.gtk_main () <0x00004>
at (wrapper managed-to-native) Gtk.Application.gtk_main () <0x00004>
at Gtk.Application.Run () <0x0000a>
at Do.Do.Main (string[]) <0x0022f>
at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object
(object,intptr,intptr,intptr) <0x00043>

"<unnamed thread>" tid=0x0xac467b70 this=0x0x2bd0c8 thread handle 0x440
state : interrupted state owns ()
at System.Collections.Generic.Dictionary`2<object, object>.set_Item
(object,object) <0x00110>
at Do.Universe.ContactItem.set_Item (string,string) <0x000e7>
at
Do.Addins.Thunderbird.ThunderbirdContactItemSource.CreateThunderbirdContactItem
(System.Collections.Hashtable) <0x001ab>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource._UpdateItems ()
<0x000e4>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource.UpdateItems ()
<0x00017>
at Do.Universe.Safe.SafeItemSource.UpdateItems () <0x0001e>
at Do.Core.UniverseManager.ReloadSource
(Do.Universe.ItemSource,System.Collections.Generic.Dictionary`2<string,
Do.Universe.Item>) <0x000ca>
at Do.Core.UniverseManager/<ReloadUniverse>c__AnonStoreyD.<>m__22
(Do.Universe.ItemSource) <0x0001b>
at System.Linq.EnumerableExtensions.ForEach<object>
(System.Collections.Generic.IEnumerable`1<object>,System.Action`1<object>)
<0x00088>
at Do.Core.UniverseManager.ReloadUniverse () <0x000cd>
at Do.Platform.ApplicationService/<RunOnThread>c__AnonStoreyF.<>m__28
() <0x0001c>
at (wrapper runtime-invoke) object.runtime_invoke_void__this__
(object,intptr,intptr,intptr) <0x00040>

"<unnamed thread>" tid=0x0xabca7b70 this=0x0xb55960 thread handle 0x44e
state : interrupted state owns ()
at System.Collections.Generic.Dictionary`2<object, object>.set_Item
(object,object) <0x00096>
at Do.Universe.ContactItem.set_Item (string,string) <0x000e7>
at
Do.Addins.Thunderbird.ThunderbirdContactItemSource.CreateThunderbirdContactItem
(System.Collections.Hashtable) <0x001ab>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource._UpdateItems ()
<0x000e4>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource.UpdateItems ()
<0x00017>
at Do.Universe.Safe.SafeItemSource.UpdateItems () <0x0001e>
at Do.Core.UniverseManager.ReloadSource
(Do.Universe.ItemSource,System.Collections.Generic.Dictionary`2<string,
Do.Universe.Item>) <0x000ca>
at Do.Core.UniverseManager/<ReloadUniverse>c__AnonStoreyD.<>m__22
(Do.Universe.ItemSource) <0x0001b>
at System.Linq.EnumerableExtensions.ForEach<object>
(System.Collections.Generic.IEnumerable`1<object>,System.Action`1<object>)
<0x00088>
at Do.Core.UniverseManager.ReloadUniverse () <0x000cd>
at Do.Platform.ApplicationService/<RunOnThread>c__AnonStoreyF.<>m__28
() <0x0001c>
at (wrapper runtime-invoke) object.runtime_invoke_void__this__
(object,intptr,intptr,intptr) <0x00040>

"<unnamed thread>" tid=0x0xaccaeb70 this=0x0x2bd190 thread handle 0x43e
state : interrupted state owns ()
at System.Collections.Generic.Dictionary`2<object, object>.set_Item
(object,object) <0x00110>
at Do.Universe.ContactItem.set_Item (string,string) <0x000e7>
at
Do.Addins.Thunderbird.ThunderbirdContactItemSource.CreateThunderbirdContactItem
(System.Collections.Hashtable) <0x001ab>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource._UpdateItems ()
<0x000e4>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource.UpdateItems ()
<0x00017>
at Do.Universe.Safe.SafeItemSource.UpdateItems () <0x0001e>
at Do.Core.UniverseManager.ReloadSource
(Do.Universe.ItemSource,System.Collections.Generic.Dictionary`2<string,
Do.Universe.Item>) <0x000ca>
at Do.Core.UniverseManager/<ReloadUniverse>c__AnonStoreyD.<>m__22
(Do.Universe.ItemSource) <0x0001b>
at System.Linq.EnumerableExtensions.ForEach<object>
(System.Collections.Generic.IEnumerable`1<object>,System.Action`1<object>)
<0x00088>
at Do.Core.UniverseManager.ReloadUniverse () <0x000cd>
at Do.Platform.ApplicationService/<RunOnThread>c__AnonStoreyF.<>m__28
() <0x0001c>
at (wrapper runtime-invoke) object.runtime_invoke_void__this__
(object,intptr,intptr,intptr) <0x00040>

"<unnamed thread>" tid=0x0xabfb6b70 this=0x0xb55bb8 thread handle 0x447
state : interrupted state owns ()
at System.Collections.Generic.Dictionary`2<object, object>.set_Item
(object,object) <0x00110>
at Do.Universe.ContactItem.set_Item (string,string) <0x000e7>
at
Do.Addins.Thunderbird.ThunderbirdContactItemSource.CreateThunderbirdContactItem
(System.Collections.Hashtable) <0x001ab>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource._UpdateItems ()
<0x000e4>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource.UpdateItems ()
<0x00017>
at Do.Universe.Safe.SafeItemSource.UpdateItems () <0x0001e>
at Do.Core.UniverseManager.ReloadSource
(Do.Universe.ItemSource,System.Collections.Generic.Dictionary`2<string,
Do.Universe.Item>) <0x000ca>
at Do.Core.UniverseManager/<ReloadUniverse>c__AnonStoreyD.<>m__22
(Do.Universe.ItemSource) <0x0001b>
at System.Linq.EnumerableExtensions.ForEach<object>
(System.Collections.Generic.IEnumerable`1<object>,System.Action`1<object>)
<0x00088>
at Do.Core.UniverseManager.ReloadUniverse () <0x000cd>
at Do.Platform.ApplicationService/<RunOnThread>c__AnonStoreyF.<>m__28
() <0x0001c>
at (wrapper runtime-invoke) object.runtime_invoke_void__this__
(object,intptr,intptr,intptr) <0x00040>

"<unnamed thread>" tid=0x0xabdacb70 this=0x0xb55a28 thread handle 0x44c
state : interrupted state owns ()
at System.Collections.Generic.Dictionary`2<object, object>.set_Item
(object,object) <0x000fe>
at Do.Universe.ContactItem.set_Item (string,string) <0x000e7>
at
Do.Addins.Thunderbird.ThunderbirdContactItemSource.CreateThunderbirdContactItem
(System.Collections.Hashtable) <0x001ab>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource._UpdateItems ()
<0x000e4>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource.UpdateItems ()
<0x00017>
at Do.Universe.Safe.SafeItemSource.UpdateItems () <0x0001e>
at Do.Core.UniverseManager.ReloadSource
(Do.Universe.ItemSource,System.Collections.Generic.Dictionary`2<string,
Do.Universe.Item>) <0x000ca>
at Do.Core.UniverseManager/<ReloadUniverse>c__AnonStoreyD.<>m__22
(Do.Universe.ItemSource) <0x0001b>
at System.Linq.EnumerableExtensions.ForEach<object>
(System.Collections.Generic.IEnumerable`1<object>,System.Action`1<object>)
<0x00088>
at Do.Core.UniverseManager.ReloadUniverse () <0x000cd>
at Do.Platform.ApplicationService/<RunOnThread>c__AnonStoreyF.<>m__28
() <0x0001c>
at (wrapper runtime-invoke) object.runtime_invoke_void__this__
(object,intptr,intptr,intptr) <0x00040>

"<unnamed thread>" tid=0x0xacb24b70 this=0x0x2bd320 thread handle 0x414
state : interrupted state owns ()
at (wrapper managed-to-native) System.Threading.Monitor.Monitor_wait
(object,int) <0x00004>
at (wrapper managed-to-native) System.Threading.Monitor.Monitor_wait
(object,int) <0x00004>
at System.Threading.Monitor.Wait (object,int) <0x00039>
at System.Threading.Monitor.Wait (object) <0x00012>
at NDesk.DBus.PendingCall.get_Reply () <0x0009b>
at NDesk.DBus.Connection.SendWithReplyAndBlock (NDesk.DBus.Message)
<0x00021>
at NDesk.DBus.BusObject.SendMethodCall
(string,string,string,NDesk.DBus.MessageWriter,System.Type,System.Exception&)
<0x0012a>
at PidginPlugin.Pidgin+IPurpleObjectProxy.PurpleAccountsGetAllActive
() <0x00057>
at PidginPlugin.Pidgin.get_ConnectedAccounts () <0x00042>
at PidginPlugin.Pidgin.GetBuddyServerAlias (string) <0x0002b>
at PidginPlugin.PidginContactItemSource.CreateBuddy
(System.Xml.XmlNode) <0x008a0>
at PidginPlugin.PidginContactItemSource.UpdateItems () <0x00357>
at Do.Universe.Safe.SafeItemSource.UpdateItems () <0x0001e>
at Do.Core.UniverseManager.ReloadSource
(Do.Universe.ItemSource,System.Collections.Generic.Dictionary`2<string,
Do.Universe.Item>) <0x000ca>
at Do.Core.UniverseManager/<ReloadUniverse>c__AnonStoreyD.<>m__22
(Do.Universe.ItemSource) <0x0001b>
at System.Linq.EnumerableExtensions.ForEach<object>
(System.Collections.Generic.IEnumerable`1<object>,System.Action`1<object>)
<0x00088>
at Do.Core.UniverseManager.ReloadUniverse () <0x000cd>
at Do.Platform.ApplicationService/<RunOnThread>c__AnonStoreyF.<>m__28
() <0x0001c>
at (wrapper runtime-invoke) object.runtime_invoke_void__this__
(object,intptr,intptr,intptr) <0x00040>

"<unnamed thread>" tid=0x0xabeb1b70 this=0x0xb55af0 thread handle 0x449
state : interrupted state owns ()
at System.Collections.Generic.Dictionary`2<object, object>.set_Item
(object,object) <0x00119>
at Do.Universe.ContactItem.set_Item (string,string) <0x000e7>
at
Do.Addins.Thunderbird.ThunderbirdContactItemSource.CreateThunderbirdContactItem
(System.Collections.Hashtable) <0x001ab>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource._UpdateItems ()
<0x000e4>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource.UpdateItems ()
<0x00017>
at Do.Universe.Safe.SafeItemSource.UpdateItems () <0x0001e>
at Do.Core.UniverseManager.ReloadSource
(Do.Universe.ItemSource,System.Collections.Generic.Dictionary`2<string,
Do.Universe.Item>) <0x000ca>
at Do.Core.UniverseManager/<ReloadUniverse>c__AnonStoreyD.<>m__22
(Do.Universe.ItemSource) <0x0001b>
at System.Linq.EnumerableExtensions.ForEach<object>
(System.Collections.Generic.IEnumerable`1<object>,System.Action`1<object>)
<0x00088>
at Do.Core.UniverseManager.ReloadUniverse () <0x000cd>
at Do.Platform.ApplicationService/<RunOnThread>c__AnonStoreyF.<>m__28
() <0x0001c>
at (wrapper runtime-invoke) object.runtime_invoke_void__this__
(object,intptr,intptr,intptr) <0x00040>

"<unnamed thread>" tid=0x0xac366b70 this=0x0x2bd000 thread handle 0x443
state : interrupted state owns ()
at System.Collections.Generic.Dictionary`2<object, object>.set_Item
(object,object) <0x00096>
at Do.Universe.ContactItem.set_Item (string,string) <0x000e7>
at
Do.Addins.Thunderbird.ThunderbirdContactItemSource.CreateThunderbirdContactItem
(System.Collections.Hashtable) <0x001ab>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource._UpdateItems ()
<0x000e4>
at Do.Addins.Thunderbird.ThunderbirdContactItemSource.UpdateItems ()
<0x00017>
at Do.Universe.Safe.SafeItemSource.UpdateItems () <0x0001e>
at Do.Core.UniverseManager.ReloadSource
(Do.Universe.ItemSource,System.Collections.Generic.Dictionary`2<string,
Do.Universe.Item>) <0x000ca>
at Do.Core.UniverseManager/<ReloadUniverse>c__AnonStoreyD.<>m__22
(Do.Universe.ItemSource) <0x0001b>
at System.Linq.EnumerableExtensions.ForEach<object>
(System.Collections.Generic.IEnumerable`1<object>,System.Action`1<object>)
<0x00088>
at Do.Core.UniverseManager.ReloadUniverse () <0x000cd>
at Do.Platform.ApplicationService/<RunOnThread>c__AnonStoreyF.<>m__28
() <0x0001c>
at (wrapper runtime-invoke) object.runtime_invoke_void__this__
(object,intptr,intptr,intptr) <0x00040>
[Error 06:23:54.485] [PidginContactItemSource] Error reading Pidgin
buddy list file: Object is not synchronized
Could not locate Tomboy on D-Bus. Perhaps it's not running?

Felix Velasco

unread,
Jun 2, 2011, 9:44:56 AM6/2/11
to gnom...@googlegroups.com
You're running into a really old bug. Do series 0.8.x requires plugins to be thread-safe, or else this may happen. For you is the thunderbird extension is the one that's behaving poorly, but in the past others have failed (banshee...). It's been solved in trunk since april 2010 [1], but there hasn't been many releases lately, so you may either wait for the 0.9.0 series, compile from trunk, or ask your downstream packager to include this patch.

Regards,
Félix Velasco

[1]: http://bazaar.launchpad.net/~do-core/do/trunk/revision/1321



2011/6/2 Sean Dague <sda...@gmail.com>
--

Sean Dague

unread,
Jun 2, 2011, 9:53:35 AM6/2/11
to gnom...@googlegroups.com
Is there an expectation that we'll see another release any time soon?
Fixed in trunk is fine, but it doesn't really count until it's in a
release somewhere. I'm using the ppa for Ubuntu as my primary source of
packages.

Thanks,

-Sean

On 06/02/2011 09:44 AM, Felix Velasco wrote:
> You're running into a really old bug. Do series 0.8.x requires plugins
> to be thread-safe, or else this may happen. For you is the thunderbird
> extension is the one that's behaving poorly, but in the past others have
> failed (banshee...). It's been solved in trunk since april 2010 [1], but
> there hasn't been many releases lately, so you may either wait for the
> 0.9.0 series, compile from trunk, or ask your downstream packager to
> include this patch.
>
> Regards,

> F�lix Velasco
>
> [1]: http://bazaar.launchpad.net/~do-core/do/trunk/revision/1321
>
>
>
> 2011/6/2 Sean Dague <sda...@gmail.com <mailto:sda...@gmail.com>>

> sda...@gmail.com <mailto:sda...@gmail.com>


> Linux Users Group
> http://dague.net http://mhvlug.org
>
> --
> You received this message because you are subscribed to the Google
> Groups "GNOME Do" group.
> To post to this group, send email to gnom...@googlegroups.com

> <mailto:gnom...@googlegroups.com>.


> To unsubscribe from this group, send email to
> gnome-do+u...@googlegroups.com

> <mailto:gnome-do%2Bunsu...@googlegroups.com>.


> For more options, visit this group at
> http://groups.google.com/group/gnome-do?hl=en.
>
>
> --
> You received this message because you are subscribed to the Google
> Groups "GNOME Do" group.
> To post to this group, send email to gnom...@googlegroups.com.
> To unsubscribe from this group, send email to
> gnome-do+u...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/gnome-do?hl=en.

Christopher James Halse Rogers

unread,
Jun 2, 2011, 9:53:26 PM6/2/11
to gnom...@googlegroups.com
On Thu, 2011-06-02 at 09:53 -0400, Sean Dague wrote:
> Is there an expectation that we'll see another release any time soon?
> Fixed in trunk is fine, but it doesn't really count until it's in a
> release somewhere. I'm using the ppa for Ubuntu as my primary source of
> packages.
>

It's fixed in the 0.8.4 release (which has been out for a couple of
months) and is fixed in both the Debian and Ubuntu archives - at least
in Maverick and later.

It's also fixed in the do-testers PPA, which I've set up to do daily
builds from trunk.

I haven't yet got around to updating the do-core PPA though (help
welcome! ☺)

signature.asc

Sean Dague

unread,
Jun 2, 2011, 10:27:05 PM6/2/11
to gnom...@googlegroups.com

Actually, I stand corrected. I'm using the Maverick straight up
repositories as I never added the ppa after a reinstall I had to do.
Currently running version - 0.8.3.1+dfsg-2ubuntu1 on top of Ubuntu 10.10
with all the updates. So it's not fixed there.

I'll give the do-testers ppa a shot, to see how we do there.

-Sean

Reply all
Reply to author
Forward
0 new messages