GNOME Bugzilla – Bug 602102
[regression] evolution-alarm-notify segv on login to desktop
Last modified: 2013-09-13 01:08:50 UTC
Debuginfo absent: 04afb15df1968743ce7263ace2a0137238b8ec9c Debuginfo absent: 8990df6ba4bf0581d51f774e373424d8ab4d35aa Debuginfo absent: d7cd8e4f4700f9cf481d01cb1dccebfc7179e131 Debuginfo absent: d8cec23e7291ee7581292a3a0589cb0f5f0e876d [New Thread 2219] [New Thread 2218] Core was generated by `evolution-alarm-notify'. Program terminated with signal 11, Segmentation fault.
+ Trace 219129
Thread 3 (Thread 2218)
Thread 1 (Thread 1909)
probably related to https://bugzilla.gnome.org/show_bug.cgi?id=601905 https://bugzilla.gnome.org/show_bug.cgi?id=602058
Chen, this is the other instance of crashing alarm notify. I saw this too, but only once or so. See the thread 1 had received a dbus notification, but thread 3 is playing with dbus in the same time. The locks around evo calls to dbus cannot help here, as the receving thread is out of evo's control. I think.
We need to make evolution-alarm-notify single threaded. There's no getting around that. Add some async functions to the ECal API if necessary. I'll try to look into this soon if no one else beats me to it.
I don see much thread usage in alarm though. There is only a single thread used afaics. A non-main thread was used instead of the glib main thread to avoid hangs when the response take a bit of time. Looks like we have a contention here between the non-main thread and main thread ?
Created attachment 147930 [details] [review] test patch Milan, can u test this patch. Just a test patch to see if its a contention between main/non-main threads. Would also need to check if it happens specifically with the signals..
Created attachment 147936 [details] [review] Another test patch to narrow down.
I have not seen this crash since, I moved to 2.29.3 .
*** Bug 601519 has been marked as a duplicate of this bug. ***
With those test patches applied it works for me finally, just make it a nice patches, proper comments (if any), and let it not claim anything during compilation. As I noticed in the above duplicate bug, there might be a potential slowness, but it's definitely better to have the application running than having it crashed. Thus yes, please commit it as soon as you can.
Downstream bug report for the same: https://bugzilla.redhat.com/show_bug.cgi?id=539727
Committed - dcaa53ca64b42dc7ad4f613ce10b186e4b4b9255 .