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 530760 - Deadlock in crossfade back-end
Deadlock in crossfade back-end
Status: RESOLVED INVALID
Product: rhythmbox
Classification: Other
Component: playback
unspecified
Other Linux
: Normal critical
: ---
Assigned To: RhythmBox Maintainers
RhythmBox Maintainers
Depends on:
Blocks:
 
 
Reported: 2008-04-30 17:12 UTC by freggy1
Modified: 2008-05-12 13:54 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description freggy1 2008-04-30 17:12:41 UTC
Now that bug #512226 has been fixed, I encountered this new deadlock with Mandriva's Rhythmbox which has the patch for bu #512226 applied.

To reproduce:
- Start Rhythmbox, crossfade back-end enabled
- Double click on song in library to start playing
- Press pause
- Press play
- Double click again on the same song

Rhythmbox deadlocks, while instead it should restart playing the same song from the beginning.

backtrace:
(gdb) thread apply all bt

Thread 32 (Thread 1157667152 (LWP 6374))

  • #0 __lll_lock_wait
    from /lib64/libpthread.so.0
  • #1 _L_lock_101
    from /lib64/libpthread.so.0
  • #2 pthread_mutex_lock
    from /lib64/libpthread.so.0
  • #3 IA__g_static_rec_mutex_lock
    at gthread.c line 313
  • #4 volume_changed_cb
    at rb-player-gst-xfade.c line 880
  • #5 IA__g_closure_invoke
    at gclosure.c line 490
  • #6 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #7 IA__g_signal_emit_valist
  • #8 IA__g_signal_emit
    at gsignal.c line 2243
  • #9 g_object_dispatch_properties_changed
    at gobject.c line 563
  • #10 gst_object_dispatch_properties_changed
    at gstobject.c line 510
  • #11 IA__g_object_set_property
    at gobjectnotifyqueue.c line 123
  • #12 gst_controller_sync_values
    at gstcontroller.c line 688
  • #13 volume_transform_ip
    at gstvolume.c line 699
  • #14 gst_base_transform_handle_buffer
    at gstbasetransform.c line 1425
  • #15 gst_base_transform_chain
    at gstbasetransform.c line 1590
  • #16 gst_pad_chain_unchecked
    at gstpad.c line 3523
  • #17 gst_pad_push
  • #18 gst_queue_loop
    at gstqueue.c line 1021
  • #19 gst_task_func
    at gsttask.c line 192
  • #20 g_thread_pool_thread_proxy
    at gthreadpool.c line 265
  • #21 g_thread_create_proxy
    at gthread.c line 635
  • #22 start_thread
    from /lib64/libpthread.so.0
  • #23 clone
    from /lib64/libc.so.6

Comment 1 Jonathan Matthew 2008-05-02 12:48:40 UTC
(In reply to comment #0)
> Now that bug #512226 has been fixed, I encountered this new deadlock with
> Mandriva's Rhythmbox which has the patch for bu #512226 applied.
> 
> 
> #19 0x00002ba3406bac64 in gst_element_set_state_func (element=0x12ec690, 
>     state=<value optimized out>) at gstelement.c:2375
> #20 0x00002ba3371e3de5 in unlink_and_dispose_stream (player=0x829050, 
>     stream=0x117e8a0) at rb-player-gst-xfade.c:1291
> #21 0x00002ba3371e5899 in actually_start_stream (stream=0x13062e0, 
>     error=0x42002e08) at rb-player-gst-xfade.c:2272

.. doesn't look like the patch has been applied.

Comment 2 freggy1 2008-05-12 13:54:43 UTC
Working in svn