GNOME Bugzilla – Bug 632260
flvdemux: Segmentation fault while scrubbing flv video in pitivi
Last modified: 2012-04-06 07:16:31 UTC
Created attachment 172461 [details] log file Hi, I was trying to load a flv video but pitivi crashed with a segmentation fault. I've attached the log made using your debug options.
I can confirm this with pitivi git, but only with the sample provided by Saverio: http://goo.gl/nHWY To reproduce: 1. import that flv clip 2. insert it in the timeline 3. scrub it repeatedly until it segfaults.
bash-4.1$ gdb python GNU gdb (GDB) 7.2-ubuntu Copyright (C) 2010 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "i686-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/bin/python...Reading symbols from /usr/lib/debug/usr/bin/python2.6...done. done. (gdb) set pagination 0 (gdb) run bin/pitivi Starting program: /usr/bin/python bin/pitivi [Thread debugging using libthread_db enabled] ** Message: pygobject_register_sinkfunc is deprecated (GstObject) [New Thread 0xb63bcb70 (LWP 7777)] [New Thread 0xb59ffb70 (LWP 7778)] [Thread 0xb59ffb70 (LWP 7778) exited] [New Thread 0xb59ffb70 (LWP 7779)] [Thread 0xb59ffb70 (LWP 7779) exited] [New Thread 0xb59ffb70 (LWP 7787)] [New Thread 0xb201fb70 (LWP 7788)] [New Thread 0xb0578b70 (LWP 7789)] [New Thread 0xafd77b70 (LWP 7790)] [Thread 0xafd77b70 (LWP 7790) exited] [Thread 0xb59ffb70 (LWP 7787) exited] [Thread 0xb0578b70 (LWP 7789) exited] [Thread 0xb201fb70 (LWP 7788) exited] [New Thread 0xb201fb70 (LWP 7792)] [New Thread 0xb0578b70 (LWP 7793)] [New Thread 0xb59ffb70 (LWP 7794)] [New Thread 0xafd77b70 (LWP 7795)] [New Thread 0xaf0ffb70 (LWP 7796)] [New Thread 0xae8feb70 (LWP 7797)] [New Thread 0xae0fdb70 (LWP 7798)] [New Thread 0xad8fcb70 (LWP 7799)] [New Thread 0xa90fab70 (LWP 7800)] [Thread 0xae8feb70 (LWP 7797) exited] [New Thread 0xae8feb70 (LWP 7801)] [New Thread 0xa88f9b70 (LWP 7802)] [New Thread 0xa80f8b70 (LWP 7803)] [New Thread 0xa78f7b70 (LWP 7804)] [New Thread 0xa70f6b70 (LWP 7805)] [New Thread 0xa66ffb70 (LWP 7806)] [New Thread 0xa5cffb70 (LWP 7809)] [Thread 0xa66ffb70 (LWP 7806) exited] [Thread 0xb0578b70 (LWP 7793) exited] Program received signal SIGSEGV, Segmentation fault.
+ Trace 224185
Thread 2986474352 (LWP 7792)
(gdb)
*** Bug 633532 has been marked as a duplicate of this bug. ***
Some more observations: - with stable gstreamer packages from Ubuntu 10.10, this clip causes pitivi to hang when scrubbed - with gstreamer jhbuild, pitivi segfaults instead of hanging. I'm suspecting this is really a gstreamer bug, so moving it there.
Any chance you could make the sample available again?
ping. Reading the code referenced by the backtrace, it's not immediately obvious what the bug may be, the file is neeeded.
Saverio, Jean-François , can you please provide sample file to reproduce the problem ?
Closing this bug report as no further information has been provided. Please feel free to reopen this bug if you can provide the information asked for. Thanks!
Argh, I was about to file a new bug for this :) Trying to load a flv file into a pitivi timeline and seeking it still causes easily reproducible crashes/segfaults. Will attach an additional gdb log made with gst good 0.10.30. This kind of instability with flv has been reported often by pitivi users. See also https://bugs.launchpad.net/ubuntu/+source/pitivi/+bug/661507 ...or more generally: http://tinyurl.com/85egvfy Here's a sample file: http://jeff.ecchi.ca/public/gstreamer-632260.flv
Created attachment 211324 [details] gdb trace "thread apply all bt" with Pitivi GES.
> Will attach an additional gdb log made > with gst good 0.10.30. Please re-test with 0.10.31 and supply new trace against the last release, or even better against git.
(In reply to comment #11) > > Will attach an additional gdb log made > > with gst good 0.10.30. > > Please re-test with 0.10.31 and supply new trace against the last release, or > even better against git. Not really needed, flvdemux have not changed between 0.10.30 and 0.10.31
Created attachment 211434 [details] [review] Fix threading issue with index handling This solves the describe issue, and also tested in Pitivi.
Nicola: cool, thanks for looking into this. What's the exact problem here though? Is the index being changed/set while the demuxer is running? Or something else? > Not really needed, flvdemux have not changed between 0.10.30 and 0.10.31 Well, it's not needed if someone wants to spend time re-testing it with a current version or checking what exactly has changed etc. (the problem might be cause by interaction with code outside of gstflvdemux.c which may have changed), but since we currently have close to zero resources for maintenance, and two branches to maintain, it simply doesn't make sense for most of us to even bother looking at anything that's not been confirmed with the latest release.
commit 628816784f3c83e76d01ce558e655d34c2181ae9 Author: Nicolas Dufresne <nicolas.dufresne@collabora.com> Date: Thu Apr 5 17:17:22 2012 -0400 flvdemux: Fix threading issue in index handling