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 795158 - Hang when externally deleting music files while listening to them
Hang when externally deleting music files while listening to them
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
unspecified
Other Linux
: Normal critical
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2018-04-11 14:17 UTC by André Klapper
Modified: 2018-11-03 12:04 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Screenshot of hung state (221.26 KB, image/png)
2018-04-11 14:17 UTC, André Klapper
Details

Description André Klapper 2018-04-11 14:17:34 UTC
Created attachment 370795 [details]
Screenshot of hung state

rhythmbox-3.4.2-1.fc27.x86_64

In the terminal, I rm -rf'ed a folder with a bunch of music files indexed by Rhythmbox while they were being played by Rhythmbox. The application hung.

$:acko\> gdb -p 2405
GNU gdb (GDB) Fedora 8.0.1-36.fc27
Attaching to process 2405
[New LWP 2444]
[New LWP 2445]
[New LWP 2448]
[New LWP 2477]
[New LWP 2481]
[New LWP 28141]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
__lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
135	2:	movl	%edx, %eax
(gdb) thread apply all bt full

Thread 6 (Thread 0x7f19f10fc700 (LWP 2481))

  • #0 syscall
    at ../sysdeps/unix/sysv/linux/x86_64/syscall.S line 38
  • #1 g_cond_wait
    at gthread-posix.c line 1395
  • #2 pre_activate
    at gstpad.c line 998
  • #3 activate_mode_internal
    at gstpad.c line 1213
  • #4 gst_pad_activate_mode
    at gstpad.c line 1313
  • #5 activate_mode_internal
    at gstpad.c line 1216
  • #6 gst_pad_activate_mode
    at gstpad.c line 1313
  • #7 activate_mode_internal
    at gstpad.c line 1184
  • #8 gst_pad_activate_mode
    at gstpad.c line 1313
  • #9 gst_tag_demux_sink_activate
    at gsttagdemux.c line 1563
  • #10 gst_pad_set_active
    at gstpad.c line 1099
  • #11 activate_pads
    at gstelement.c line 2831
  • #12 gst_iterator_fold
    at gstiterator.c line 617
  • #13 iterator_activate_fold_with_resync
    at gstelement.c line 2855
  • #14 gst_element_pads_activate
    at gstelement.c line 2899
  • #15 gst_element_change_state_func
    at gstelement.c line 2951
  • #16 gst_tag_demux_change_state
    at gsttagdemux.c line 1696
  • #17 gst_element_change_state
    at gstelement.c line 2743
  • #18 gst_element_set_state_func
    at gstelement.c line 2697
  • #19 connect_pad
    at gstdecodebin2.c line 2493
  • #20 analyze_new_pad
    at gstdecodebin2.c line 1787
  • #21 type_found
    at gstdecodebin2.c line 2862
  • #22 ffi_call_unix64
    at ../src/x86/unix64.S line 76
  • #23 ffi_call
    at ../src/x86/ffi64.c line 525
  • #28 <emit signal ??? on instance 0x7f19f82371e0 [GstTypeFindElement]>
    at gsignal.c line 3447
  • #29 gst_type_find_element_emit_have_type
    at gsttypefindelement.c line 238
  • #30 gst_type_find_element_loop
    at gsttypefindelement.c line 1169
  • #31 gst_task_func
    at gsttask.c line 335
  • #32 g_thread_pool_thread_proxy
    at gthreadpool.c line 307
  • #33 g_thread_proxy
    at gthread.c line 784
  • #34 start_thread
    at pthread_create.c line 465
  • #35 clone
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S line 95
rax            0xfffffffffffffe00	-512
rbx            0x5572987dd3c0	93950673015744
rcx            0x7f1a2715ab1d	139750301608733
rdx            0x2	2
rsi            0x80	128
rdi            0x557299570dc0	93950687251904
rbp            0x5572987dd3d8	0x5572987dd3d8
rsp            0x7ffdb1481678	0x7ffdb1481678
r8             0x557299570dc0	93950687251904
r9             0x7f1a2804f650	139750317291088
r10            0x0	0
r11            0x202	514
r12            0x5572987dd430	93950673015856
r13            0x7f1a0000f830	139749645940784
r14            0x7f1a2804f650	139750317291088
r15            0x1	1
rip            0x7f1a2715ab1d	0x7f1a2715ab1d <__lll_lock_wait+29>
eflags         0x202	[ IF ]
cs             0x33	51
ss             0x2b	43
ds             0x0	0
es             0x0	0
fs             0x0	0
gs             0x0	0
(gdb) quit
A debugging session is active.

	Inferior 1 [process 2405] will be detached.

Quit anyway? (y or n) y
Comment 1 Jonathan Matthew 2018-04-11 22:28:38 UTC
All rhythmbox is trying to do here is set playbin to READY, so I think this bug belongs to gstreamer.  What version of gstreamer and its plugin packages are you using?
Comment 2 André Klapper 2018-04-12 08:36:18 UTC
$:acko\> rpm -qa | grep gstreamer
gstreamer1-1.12.4-1.fc27.x86_64
gstreamer1-libav-1.12.4-1.fc27.x86_64
gstreamer1-plugins-bad-free-1.12.4-1.fc27.x86_64
gstreamer1-plugins-bad-free-fluidsynth-1.12.4-1.fc27.x86_64
gstreamer1-plugins-bad-free-gtk-1.12.4-1.fc27.x86_64
gstreamer1-plugins-bad-freeworld-1.12.4-1.fc27.x86_64
gstreamer1-plugins-base-1.12.4-1.fc27.x86_64
gstreamer1-plugins-base-tools-1.12.4-1.fc27.x86_64
gstreamer1-plugins-good-1.12.4-1.fc27.x86_64
gstreamer1-plugins-ugly-free-1.12.4-2.fc27.x86_64
gstreamer1-plugins-ugly-1.12.4-3.fc27.x86_64
Comment 3 GStreamer system administrator 2018-11-03 12:04:57 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/432.