After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 687640 - [abrt] Crash in caldav's initialize_backend()
[abrt] Crash in caldav's initialize_backend()
Status: RESOLVED FIXED
Product: evolution-data-server
Classification: Platform
Component: Calendar
3.10.x (obsolete)
Other Linux
: Normal critical
: ---
Assigned To: evolution-calendar-maintainers
Evolution QA team
evolution[caldav]
Depends on:
Blocks:
 
 
Reported: 2012-11-05 13:41 UTC by Milan Crha
Modified: 2014-01-15 13:51 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
backtrace from evolution-data-server-3.10.2-2 on Fedora 19 (37.12 KB, text/plain)
2013-11-27 22:05 UTC, David Juran
Details

Description Milan Crha 2012-11-05 13:41:17 UTC
Moving this from a downstream bug report:
https://bugzilla.redhat.com/show_bug.cgi?id=872652

Version-Release number of selected component:
evolution-data-server-3.6.1-1.fc18

Additional info:
libreport version: 2.0.18
abrt_version:   2.0.18
backtrace_rating: 4
cmdline:        /usr/libexec/evolution-calendar-factory
crash_function: initialize_backend
kernel:         3.6.5-2.fc18.x86_64

Core was generated by `/usr/libexec/evolution-calendar-factory'.
Program terminated with signal 6, Aborted.

Thread 2 (Thread 0x7f7743b65800 (LWP 1642))

  • #0 poll
    at ../sysdeps/unix/syscall-template.S line 81
  • #1 g_main_context_poll
    at gmain.c line 3584
  • #2 g_main_context_iterate
    at gmain.c line 3285
  • #3 g_main_loop_run
    at gmain.c line 3484
  • #4 dbus_server_run_server
    at e-dbus-server.c line 222
  • #5 ffi_call_unix64
    at ../src/x86/unix64.S line 75
  • #6 ffi_call
    at ../src/x86/ffi64.c line 486
  • #7 g_cclosure_marshal_generic_va
    at gclosure.c line 1550
  • #8 _g_closure_invoke_va
    at gclosure.c line 840
  • #9 g_signal_emit_valist
    at gsignal.c line 3211
  • #10 g_signal_emit
    at gsignal.c line 3356
  • #11 e_dbus_server_run
    at e-dbus-server.c line 396
  • #12 main
    at evolution-calendar-factory.c line 137

Comment 1 Iain Lane 2013-06-07 12:37:23 UTC
I'm still seeing this with 3.8.2 (on Ubuntu). I don't have a good way to reproduce; setting a breakpoint shows that the code passes through this block successfully most of the time and it *seems* to be coded appropriately defensively...
Comment 2 Milan Crha 2013-07-01 14:10:53 UTC
Thanks for the update, Iain, I'm updating the version information. I'm not able to reproduce this reliably too, it just happens sometimes. I guess it's some use-after-free, but as you said, the code has there some locks, which are used to prevent such situation.
Comment 3 Christian Kirbach 2013-08-03 12:23:24 UTC
Still happens with 3.8.3

evolution-data-server                          3.8.3-0ubuntu5~ubuntu1
Comment 4 Christian Kirbach 2013-08-03 12:24:25 UTC


  • #0 __GI_raise
    at ../nptl/sysdeps/unix/sysv/linux/raise.c line 56
  • #1 __GI_abort
    at abort.c line 90
  • #2 __libc_message
    at ../sysdeps/unix/sysv/linux/libc_fatal.c line 199
  • #3 malloc_printerr
  • #4 _int_free
    at malloc.c line 3758
  • #5 initialize_backend
    at e-cal-backend-caldav.c line 2818
  • #6 caldav_do_open
    at e-cal-backend-caldav.c line 2912
  • #7 cal_backend_open
    at e-cal-backend-sync.c line 559
  • #8 operation_thread
    at e-data-cal.c line 504
  • #9 g_thread_pool_thread_proxy
    at /build/buildd/glib2.0-2.36.3/./glib/gthreadpool.c line 309
  • #10 g_thread_proxy
    at /build/buildd/glib2.0-2.36.3/./glib/gthread.c line 798
  • #11 start_thread
    at pthread_create.c line 311
  • #12 clone
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S line 113

Comment 5 Matthew Barnes 2013-08-03 13:00:32 UTC
The latest release is 3.8.4, and the line numbers in these back traces don't match what's currently in the gnome-3-8 branch, so I can't tell if the issue is fixed already or not.

It would be helpful if someone could reproduce this with 3.8.4 or later.
Comment 6 Milan Crha 2013-08-05 05:02:32 UTC
It crashes from time to time to me too, even on git master, but I cannot debug it properly, because once I try it stops crashing :-/
Comment 7 Hobson Lane 2013-11-17 01:47:28 UTC
Happens to me (and others) on 3.8.5 per this downstream bug report:
Bug 862830 - [abrt] evolution-data-server-3.5.92-1.fc18: initialize_backend: Process /usr/libexec/evolution-calendar-factory was killed by signal 6 (SIGABRT)
Comment 8 David Juran 2013-11-27 22:05:34 UTC
Created attachment 262983 [details]
backtrace from evolution-data-server-3.10.2-2 on Fedora 19

Attaching a backtrace from evolution-data-server-3.10.2-2 on Fedora 19
Comment 9 Milan Crha 2014-01-15 13:51:15 UTC
I think I finally found the cause, it was about two threads accessing internal structure members simultaneously, overwriting data one to the other.

Created commit 12a279c in eds master (3.11.5+) [1]
Created commit 16e77f3 in eds gnome-3-10 (3.10.4+)

[1] https://git.gnome.org/browse/evolution-data-server/commit/?id=12a279c