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 770384 - When playing an audio rewind, GStreame has crash
When playing an audio rewind, GStreame has crash
Status: RESOLVED INCOMPLETE
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
1.x
Other Linux
: Normal normal
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-08-25 12:00 UTC by tony
Modified: 2016-11-11 12:52 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
pipeline dot (19.40 KB, application/msword)
2016-08-26 08:22 UTC, tony
Details
valgrind log (756.31 KB, text/plain)
2016-08-26 08:23 UTC, tony
Details

Description tony 2016-08-25 12:00:56 UTC
On Freescal iMx6
I used gst-play-1.0,gplay-1.0 to play test.mp2

change playrate to -1,-2. gstreamer dump.

here is gdb log:

  • #0 raise
    from /lib/libpthread.so.0
  • #1 _g_log_abort
    at gmessages.c line 308
  • #2 g_logv
    at gmessages.c line 1033
  • #3 g_log
    at gmessages.c line 1071
  • #4 g_malloc
    at gmem.c line 102
  • #5 g_slice_alloc
    at gslice.c line 1007
  • #6 _sysmem_new_block
  • #7 default_alloc
    at gstallocator.c line 537
  • #8 gst_allocator_alloc
    at gstallocator.c line 319
  • #9 gst_buffer_new_allocate
    at gstbuffer.c line 755
  • #10 gst_base_src_default_alloc
    at gstbasesrc.c line 1435
  • #11 gst_base_src_default_create
    at gstbasesrc.c line 1473
  • #12 gst_base_src_get_range
    at gstbasesrc.c line 2455
  • #13 gst_base_src_getrange
    at gstbasesrc.c line 2623
  • #14 gst_pad_get_range_unchecked
    at gstpad.c line 4536
  • #15 gst_pad_pull_range
    at gstpad.c line 4775
  • #16 gst_proxy_pad_getrange_default
    at gstghostpad.c line 184
  • #17 gst_pad_get_range_unchecked
    at gstpad.c line 4536
  • #18 gst_pad_pull_range
    at gstpad.c line 4775
  • #19 gst_pad_get_range_unchecked
    at gstpad.c line 4536
  • #20 gst_pad_pull_range
    at gstpad.c line 4775
  • #21 gst_base_parse_pull_range
    at gstbaseparse.c line 3139
  • #22 gst_base_parse_scan_frame
    at gstbaseparse.c line 3275
  • #23 gst_base_parse_loop
    at gstbaseparse.c line 3389
  • #24 gst_task_func
    at gsttask.c line 331
  • #25 default_func
    at gsttaskpool.c line 68
  • #26 g_thread_pool_thread_proxy
    at gthreadpool.c line 307
  • #27 g_thread_proxy
    at gthread.c line 764
  • #28 ??
    from /lib/libpthread.so.0
  • #29 ??
    from /lib/libpthread.so.0

Comment 1 André Klapper 2016-08-25 17:38:49 UTC
Which exact gstreamer version is this about?
Comment 2 tony 2016-08-26 01:30:34 UTC
I tried 1.9.1 and 1.6.1, all have this problem.
Comment 3 Sebastian Dröge (slomo) 2016-08-26 07:10:34 UTC
Can you get a log with valgrind (don't forget G_SLICE=always-malloc and use --track-origins=yes)? This would be some kind of memory corruption.

Are you using (in that pipeline) any custom plugins, like the ones from Freescale?
Comment 4 tony 2016-08-26 08:22:22 UTC
Created attachment 334207 [details]
pipeline dot
Comment 5 tony 2016-08-26 08:23:17 UTC
Created attachment 334208 [details]
valgrind log
Comment 6 tony 2016-08-26 08:25:52 UTC
The use of Element is from base, good, and only mad is from ugly

I has upload dot and log.
Comment 7 Sebastian Dröge (slomo) 2016-08-26 08:41:22 UTC
This looks like the culprit is pulseaudio in this run, it's producing a SIGILL here.
Also worrying is all the "Use of uninitialised value of size 4", those don't make much sense if you look at the code.

Are you sure valgrind works correctly on your platform?
Comment 8 tony 2016-08-26 09:16:01 UTC
My test file is greater than 3600kb, upload failed.
Can you give me a mail address, I send the test file to the past?
I'm not sure if valgrind is available. I'll try it later.

Thank you
Comment 9 tony 2016-08-26 09:19:16 UTC
My mail address is :426829@qq.com

You can send a message to me, I will reply to the test file
Comment 10 Tim-Philipp Müller 2016-08-26 09:29:38 UTC
It aborts because it fails to allocate 65623 bytes:


  • #0 raise
    from /lib/libpthread.so.0
  • #1 _g_log_abort
    at gmessages.c line 308
  • #2 g_logv
    at gmessages.c line 1033
  • #3 g_log
    at gmessages.c line 1071
  • #4 g_malloc
    at gmem.c line 102
  • #5 g_slice_alloc
    at gslice.c line 1007

This is not a huge or unusual amount of memory, so you have to figure out why that can't be allocated on your system.
Comment 11 tony 2016-08-29 02:28:43 UTC
Yes
I again in A7 CSR platform to try again, also have this problem.
Memory cannot be allocated, what may be the reason?
Comment 12 Tim-Philipp Müller 2016-11-11 12:52:06 UTC
I don't know, but it does not look like a GStreamer problem to me (unless there's a big leak and that's why it fails to alloc memory after some time, but we have no indication of that yet here).

Perhaps it's related to your libc? You'll have to investigate why it can't alloc such a small amount of memory.