indicator-weather crashed with SIGSEGV in dbusmenu_menuitem_get_id()

Bug #742824 reported by Benjamin Drung
394
This bug affects 87 people
Affects Status Importance Assigned to Milestone
DBus Menu
Incomplete
Medium
Unassigned
Weather Indicator
Fix Released
Medium
Unassigned
indicator-weather (Ubuntu)
Confirmed
Medium
Unassigned

Bug Description

Binary package hint: indicator-weather

.

ProblemType: Crash
DistroRelease: Ubuntu 11.04
Package: indicator-weather 11.03.20+repack-0ubuntu2
ProcVersionSignature: Ubuntu 2.6.38-7.38-generic 2.6.38
Uname: Linux 2.6.38-7-generic x86_64
Architecture: amd64
Date: Fri Mar 25 22:18:27 2011
ExecutablePath: /usr/bin/indicator-weather
InstallationMedia: Ubuntu 10.10 "Maverick Meerkat" - Alpha amd64 (20100921.1)
InterpreterPath: /usr/bin/python2.7
ProcCmdline: /usr/bin/python /usr/bin/indicator-weather
ProcEnviron:
 LANGUAGE=de_DE:en
 LANG=de_DE.UTF-8
 SHELL=/bin/bash
SegvAnalysis:
 Segfault happened at: 0x7f83698d27ca <dbusmenu_menuitem_get_id+26>: cmp %rax,(%rdx)
 PC (0x7f83698d27ca) ok
 source "%rax" ok
 destination "(%rdx)" (0x00000020) not located in a known VMA region (needed writable region)!
SegvReason: writing NULL VMA
Signal: 11
SourcePackage: indicator-weather
StacktraceTop:
 dbusmenu_menuitem_get_id () from /usr/lib/libdbusmenu-glib.so.3
 ?? () from /usr/lib/libdbusmenu-glib.so.3
 g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
 ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
 g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
Title: indicator-weather crashed with SIGSEGV in dbusmenu_menuitem_get_id()
UpgradeStatus: Upgraded to natty on 2011-03-11 (14 days ago)
UserGroups: adm admin cdrom dialout libvirtd lpadmin plugdev sambashare

Revision history for this message
Benjamin Drung (bdrung) wrote :
Revision history for this message
Apport retracing service (apport) wrote :

StacktraceTop:
 dbusmenu_menuitem_get_id (mi=<value optimized out>) at /build/buildd/libdbusmenu-0.4.0/./libdbusmenu-glib/menuitem.c:518
 menuitem_property_idle (user_data=<value optimized out>) at /build/buildd/libdbusmenu-0.4.0/./libdbusmenu-glib/server.c:940
 g_main_dispatch (context=0x1835f10) at /build/buildd/glib2.0-2.28.4/./glib/gmain.c:2440
 g_main_context_dispatch (context=0x1835f10) at /build/buildd/glib2.0-2.28.4/./glib/gmain.c:3013
 g_main_context_iterate (context=0x1835f10, block=<value optimized out>, dispatch=1, self=<value optimized out>) at /build/buildd/glib2.0-2.28.4/./glib/gmain.c:3091

Revision history for this message
Apport retracing service (apport) wrote : Stacktrace.txt
Revision history for this message
Apport retracing service (apport) wrote : ThreadStacktrace.txt
Changed in indicator-weather (Ubuntu):
importance: Undecided → Medium
tags: removed: need-amd64-retrace
Benjamin Drung (bdrung)
visibility: private → public
Changed in indicator-weather (Ubuntu):
status: New → Confirmed
Changed in weather-indicator:
importance: Undecided → Medium
milestone: none → cloudy-4
status: New → Confirmed
Revision history for this message
Ted Gould (ted) wrote :

I think we're going to need a valgrind log on this one as well. I've checked to ensure that we're referencing all the objects being used and that all looks good. So something fishy has to be going on. Thanks!

Changed in dbusmenu:
importance: Undecided → Medium
status: New → Incomplete
Changed in weather-indicator:
milestone: cloudy-4 → foggy
Revision history for this message
Benjamin Drung (bdrung) wrote :

How do I get a valgrind log for the indicator?

Revision history for this message
Sebastien Bacher (seb128) wrote :

you should be able to run it under valgrind on a command line? see https://wiki.ubuntu.com/Valgrind for details on valgrind

Revision history for this message
Benjamin Drung (bdrung) wrote :

Two question: indicator-weather is launched on login. Should i kill the running process and then run indicator-weather with valgrind? indicator-weather crashes very rarely and I don't know how to trigger it. Is it useful to run valgrind on indicator-weather, when indicator-weather will crash in x hours (or y days)?

Revision history for this message
Sebastien Bacher (seb128) wrote :

you can stop the running instance and start a new one under valgrind yes, run it until you get an "invalid read" or "invalid write" in the valgrind log, better to install the debug packages before starting to the log you get is an useful one

Revision history for this message
Benjamin Drung (bdrung) wrote :

indicator-weather neither have a debug package nor a ddeb.

Revision history for this message
Benjamin Drung (bdrung) wrote :

indicator-weather is a python script which explains why there is no ddeb for it.

I ran indicator-weather with valgrind. It hasn't crashed yet, but it shows some backtraces on the terminal:

Exception in thread Fetcher:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 552, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 505, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/bin/indicator-weather", line 1148, in get_new_weather_data
    weather = self.get_weather()
  File "/usr/bin/indicator-weather", line 1211, in get_weather
    return self.current_location.weather
AttributeError: Location instance has no attribute 'weather'

Revision history for this message
Sebastien Bacher (seb128) wrote :

right, but you should install the ddeb for the libraries listed in the stacktrace if you can that's likely those that will show in the log

Revision history for this message
Benjamin Drung (bdrung) wrote :

I fail to reproduce this crash.

Revision history for this message
Dave Russell (drussell) wrote :

I wonder if this might be linked to connectivity? For me it crashed when I joined a pay for wireless network which required web based user/password credentials. So while the applet had network access, all lookups for weather updates etc would have failed and delivered it "corrupted" information.

It just seemed like too much of a co-incidence.

Revision history for this message
Dave Russell (drussell) wrote :

By the way, this was on fully updated 11.10.

Revision history for this message
Mark Campbell (campbemw) wrote :

I just got this on up-to-date Ubuntu 12.04.

Revision history for this message
Charles Kerr (charlesk) wrote :

Mark, was the stacktrace the same?

tags: added: precise
Revision history for this message
Matthias Andree (matthias-andree) wrote :

Charles, the duplicate report I've just filed contains an amd64 stack trace for precise. HTH.

tags: added: quantal running-unity
Revision history for this message
Joshua Tasker (jtasker) wrote :

This was an issue with Weather Indicator's threading code; it has since been rewritten, and should no longer exhibit this behavior.

However, if there is an underlying dbus issue, it has not been addressed -- I know this crash usually occurred (albeit sporadically) when updating the menu from a thread other than the main thread.

Changed in weather-indicator:
milestone: foggy → 13.05.17
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.