View Issue Details

IDProjectCategoryView StatusLast Update
0002051ardourbugspublic2020-04-19 20:12
Reporterkenrestivo Assigned Topaul  
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Product VersionSVN/2.0-ongoing 
Summary0002051: SIGSEGVs whilst displaying the splash screen (at loading session)
DescriptionArdour segfault's when loading the splash screen. This is on Linux, on a dual-core system.

An ardbg backtrace showed that at the point of the crash, two threads were trying to Splash::expose() simultaneously.

I was able to get Ardour to load and run perfectly by commenting out the entire body of the Splash::expose() method.

I replaced that method with a printf() and discovered that the Splash::expose() method gets called FIVE TIMES! Smells to me like a race condition of some kind. I'd be surprised if you'd be able to duplicate the crash without my exact system here. But just FYI, it might cause trouble for other people as well.
Additional Information
Thread 4 (Thread 1090525520 (LWP 15759)):
#0 0x00002aab53ea8ba9 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
0000001 0x00002aab4d9e330c in peak_thread_work () from libs/ardour/libardour.so
#2 0x00002aab52896b9f in call_thread_entry_slot () from libs/glibmm2/libglibmm2.so
#3 0x00002aab4f5dd384 in ?? () from /usr/lib/libglib-2.0.so.0
0000004 0x00002aab53ea43f7 in start_thread () from /lib/libpthread.so.0
0000005 0x00002aab54e4293d in clone () from /lib/libc.so.6
 
Thread 3 (Thread 1082132816 (LWP 15758)):
#0 0x00002aab53ea8ba9 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
0000001 0x00002aab4d9e330c in peak_thread_work () from libs/ardour/libardour.so
#2 0x00002aab52896b9f in call_thread_entry_slot () from libs/glibmm2/libglibmm2.so
#3 0x00002aab4f5dd384 in ?? () from /usr/lib/libglib-2.0.so.0
0000004 0x00002aab53ea43f7 in start_thread () from /lib/libpthread.so.0
0000005 0x00002aab54e4293d in clone () from /lib/libc.so.6
 
Thread 2 (Thread 46915416134352 (LWP 15750)):
#0 0x00002aab54de7db3 in memcpy () from /lib/libc.so.6
0000001 0x00002aab503acbd8 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#2 0x00002aab503adb61 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#3 0x00002aab5039f89d in ?? () from /usr/lib/libgdk-x11-2.0.so.0
0000004 0x00000000008035aa in Splash::expose ()
0000005 0x000000000080461b in sigc::internal::slot_call1<sigc::bound_mem_functor1<bool, Splash, _GdkEventExpose*>, bool, _GdkEventExpose*>::call_it ()
#6 0x00002aab4e7e88c1 in (anonymous namespace)::Widget_signal_expose_event_callback ()
   from libs/gtkmm2/gtk/libgtkmm2.so
#7 0x00002aab4fefbddf in ?? () from /usr/lib/libgtk-x11-2.0.so.0
0000008 0x00002aab4eb3ea1f in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
0000009 0x00002aab4eb52ca5 in ?? () from /usr/lib/libgobject-2.0.so.0
0000010 0x00002aab4eb53e5f in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
0000011 0x00002aab4eb54523 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
0000012 0x00002aab50002aa5 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
0000013 0x00002aab4fef627e in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0
0000014 0x00002aab5039dc34 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#15 0x00002aab5039e1c2 in gdk_window_process_updates () from /usr/lib/libgdk-x11-2.0.so.0
0000016 0x00002aab5039e121 in gdk_window_process_updates () from /usr/lib/libgdk-x11-2.0.so.0
#17 0x00002aab5001705d in ?? () from /usr/lib/libgtk-x11-2.0.so.0
0000018 0x00002aab4e7f6be0 in Gtk::Container_Class::check_resize_callback () from libs/gtkmm2/gtk/libgtkmm2.so
0000019 0x00002aab4eb3ea1f in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
0000020 0x00002aab4eb52ada in ?? () from /usr/lib/libgobject-2.0.so.0
0000021 0x00002aab4eb54135 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
0000022 0x00002aab4eb54523 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
0000023 0x00002aab4fe6c9f0 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#24 0x00002aab5038584e in ?? () from /usr/lib/libgdk-x11-2.0.so.0
0000025 0x00002aab4f5bbdf4 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
0000026 0x00002aab4f5bf0dd in ?? () from /usr/lib/libglib-2.0.so.0
0000027 0x00002aab4f5bf5ae in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
0000028 0x00002aab4fef6321 in gtk_main_iteration () from /usr/lib/libgtk-x11-2.0.so.0
0000029 0x00002aab4dedba76 in Gtkmm2ext::UI::flush_pending () from libs/gtkmm2ext/libgtkmm2ext.so
0000030 0x00000000005054dc in ARDOUR_UI::create_engine ()
0000031 0x000000000051426e in ARDOUR_UI::get_session_parameters ()
0000032 0x0000000000514e3a in ARDOUR_UI::startup ()
0000033 0x00002aab4dedc008 in Gtkmm2ext::UI::run () from libs/gtkmm2ext/libgtkmm2ext.so
0000034 0x000000000072e7dd in main ()
 
Thread 1 (LWP 15750):
#0 0x00002aab54de7db3 in memcpy () from /lib/libc.so.6
0000001 0x00002aab503acbd8 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#2 0x00002aab503adb61 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#3 0x00002aab5039f89d in ?? () from /usr/lib/libgdk-x11-2.0.so.0
0000004 0x00000000008035aa in Splash::expose ()
0000005 0x000000000080461b in sigc::internal::slot_call1<sigc::bound_mem_functor1<bool, Splash, _GdkEventExpose*>, bool, _GdkEventExpose*>::call_it ()
#6 0x00002aab4e7e88c1 in (anonymous namespace)::Widget_signal_expose_event_callback ()
   from libs/gtkmm2/gtk/libgtkmm2.so
#7 0x00002aab4fefbddf in ?? () from /usr/lib/libgtk-x11-2.0.so.0
0000008 0x00002aab4eb3ea1f in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
0000009 0x00002aab4eb52ca5 in ?? () from /usr/lib/libgobject-2.0.so.0
0000010 0x00002aab4eb53e5f in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
0000011 0x00002aab4eb54523 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
0000012 0x00002aab50002aa5 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
0000013 0x00002aab4fef627e in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0
0000014 0x00002aab5039dc34 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#15 0x00002aab5039e1c2 in gdk_window_process_updates () from /usr/lib/libgdk-x11-2.0.so.0
0000016 0x00002aab5039e121 in gdk_window_process_updates () from /usr/lib/libgdk-x11-2.0.so.0
#17 0x00002aab5001705d in ?? () from /usr/lib/libgtk-x11-2.0.so.0
0000018 0x00002aab4e7f6be0 in Gtk::Container_Class::check_resize_callback () from libs/gtkmm2/gtk/libgtkmm2.so
0000019 0x00002aab4eb3ea1f in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
0000020 0x00002aab4eb52ada in ?? () from /usr/lib/libgobject-2.0.so.0
0000021 0x00002aab4eb54135 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
0000022 0x00002aab4eb54523 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
0000023 0x00002aab4fe6c9f0 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#24 0x00002aab5038584e in ?? () from /usr/lib/libgdk-x11-2.0.so.0
0000025 0x00002aab4f5bbdf4 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
0000026 0x00002aab4f5bf0dd in ?? () from /usr/lib/libglib-2.0.so.0
0000027 0x00002aab4f5bf5ae in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
0000028 0x00002aab4fef6321 in gtk_main_iteration () from /usr/lib/libgtk-x11-2.0.so.0
0000029 0x00002aab4dedba76 in Gtkmm2ext::UI::flush_pending () from libs/gtkmm2ext/libgtkmm2ext.so
0000030 0x00000000005054dc in ARDOUR_UI::create_engine ()
0000031 0x000000000051426e in ARDOUR_UI::get_session_parameters ()
0000032 0x0000000000514e3a in ARDOUR_UI::startup ()
0000033 0x00002aab4dedc008 in Gtkmm2ext::UI::run () from libs/gtkmm2ext/libgtkmm2ext.so
0000034 0x000000000072e7dd in main ()
#0 0x00002aab54de7db3 in memcpy () from /lib/libc.so.6

TagsNo tags attached.

Activities

kenrestivo

2008-01-24 06:52

reporter   ~0004679

Revision: 2957

v2

2008-02-03 21:20

developer   ~0004699

Does this happen when loading a session off the command line or when just starting ardour without a session?

paul

2008-05-29 15:18

administrator   ~0004975

i am 95% certain that this is fixed. please confirm.

kenrestivo

2008-06-01 15:16

reporter   ~0004997

Yes, close this out. It was fixed in 2.3 in one of the svn-ongoing's, months ago. Works fine here using ion3 WM.

paul

2008-06-02 13:34

administrator   ~0004998

see notes.

system

2020-04-19 20:12

developer   ~0021620

Issue has been closed automatically, by Trigger Close Plugin.
Feel free to re-open with additional information if you think the issue is not resolved.

Issue History

Date Modified Username Field Change
2008-01-24 06:49 kenrestivo New Issue
2008-01-24 06:52 kenrestivo Note Added: 0004679
2008-02-03 21:20 v2 Note Added: 0004699
2008-05-29 15:18 paul Note Added: 0004975
2008-05-29 15:18 paul Status new => feedback
2008-06-01 15:16 kenrestivo Note Added: 0004997
2008-06-02 13:34 paul Status feedback => resolved
2008-06-02 13:34 paul Resolution open => fixed
2008-06-02 13:34 paul Assigned To => paul
2008-06-02 13:34 paul Note Added: 0004998
2020-04-19 20:12 system Note Added: 0021620
2020-04-19 20:12 system Status resolved => closed