seg fault on 64 bit ARM

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

seg fault on 64 bit ARM

Rand Graham
Hello,

I am trying to run a gst-launch pipeline on 64 bit ARM architecture. The only warning I see is from libde265dec. "dec.c:860:gst_libde265_dec_handle_frame:<libde265dec0> warning: Cannot run decoder multi-threaded because stream does not support WPP (code=1000)"

Can you tell what the problem is from the following debug output?

The pipeline:

gst-launch-1.0 -v -e  --gst-debug-level=3  qtmux name=m ! filesink location=uhd1280x720swenc.mp4 filesrc location=uhd.trp ! tsdemux name=dem dem. ! queue ! h265parse ! libde265dec ! videoscale ! 'video/x-raw, width=(int)1280, height=(int)720, format=(string)I420' ! x264enc dct8x8=true ! m. dem. ! queue ! avdec_aac ! audioconvert ! voaacenc ! m.


The output:

Setting pipeline to PAUSED ...
0:00:00.138648385 22424       0x734330 WARN                 basesrc gstbasesrc.c:3489:gst_base_src_start_complete:<filesrc0> pad not activated yet
Pipeline is PREROLLING ...
0:00:00.142918281 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.142978646 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.143011927 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.143032396 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.143054427 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.143091927 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.143124167 22424       0x728590 WARN        mpegtspacketizer mpegtspacketizer.c:2297:mpegts_packetizer_pts_to_ts: No groups, can't calculate timestamp
0:00:00.143420938 22424       0x728940 FIXME           videodecoder gstvideodecoder.c:1057:gst_video_decoder_drain_out:<libde265dec0> Sub-class should implement drain()
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal"
/GstPipeline:pipeline0/GstH265Parse:h265parse0.GstPad:sink: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal"
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal"
/GstPipeline:pipeline0/GstQueue:queue1.GstPad:src: caps = "audio/mpeg\,\ mpegversion\=\(int\)2\,\ stream-format\=\(string\)adts"
/GstPipeline:pipeline0/avdec_aac:avdec_aac0.GstPad:sink: caps = "audio/mpeg\,\ mpegversion\=\(int\)2\,\ stream-format\=\(string\)adts"
/GstPipeline:pipeline0/GstQueue:queue1.GstPad:sink: caps = "audio/mpeg\,\ mpegversion\=\(int\)2\,\ stream-format\=\(string\)adts"
/GstPipeline:pipeline0/GstH265Parse:h265parse0.GstPad:src: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal\,\ parsed\=\(boolean\)true"
/GstPipeline:pipeline0/GstLibde265Dec:libde265dec0.GstPad:sink: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal\,\ parsed\=\(boolean\)true"
0:00:00.150471510 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
/GstPipeline:pipeline0/GstH265Parse:h265parse0.GstPad:src: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal\,\ width\=\(int\)3840\,\ height\=\(int\)2160\,\ framerate\=\(fraction\)30000/1001\,\ parsed\=\(boolean\)true\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ profile\=\(string\)main-10\,\ tier\=\(string\)main\,\ level\=\(string\)5.1"
/GstPipeline:pipeline0/GstLibde265Dec:libde265dec0.GstPad:sink: caps = "video/x-h265\,\ stream-format\=\(string\)byte-stream\,\ alignment\=\(string\)nal\,\ width\=\(int\)3840\,\ height\=\(int\)2160\,\ framerate\=\(fraction\)30000/1001\,\ parsed\=\(boolean\)true\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ profile\=\(string\)main-10\,\ tier\=\(string\)main\,\ level\=\(string\)5.1"
0:00:00.150908698 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
0:00:00.151043125 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
0:00:00.151111146 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
/GstPipeline:pipeline0/avdec_aac:avdec_aac0.GstPad:src: caps = "audio/x-raw\,\ format\=\(string\)F32LE\,\ layout\=\(string\)interleaved\,\ rate\=\(int\)44100\,\ channels\=\(int\)2\,\ channel-mask\=\(bitmask\)0x0000000000000003"
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:src: caps = "audio/x-raw\,\ rate\=\(int\)44100\,\ channels\=\(int\)2\,\ format\=\(string\)S16LE\,\ layout\=\(string\)interleaved\,\ channel-mask\=\(bitmask\)0x0000000000000003"
/GstPipeline:pipeline0/GstVoAacEnc:voaacenc0.GstPad:sink: caps = "audio/x-raw\,\ rate\=\(int\)44100\,\ channels\=\(int\)2\,\ format\=\(string\)S16LE\,\ layout\=\(string\)interleaved\,\ channel-mask\=\(bitmask\)0x0000000000000003"
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:sink: caps = "audio/x-raw\,\ format\=\(string\)F32LE\,\ layout\=\(string\)interleaved\,\ rate\=\(int\)44100\,\ channels\=\(int\)2\,\ channel-mask\=\(bitmask\)0x0000000000000003"
/GstPipeline:pipeline0/GstVoAacEnc:voaacenc0.GstPad:src: caps = "audio/mpeg\,\ mpegversion\=\(int\)4\,\ channels\=\(int\)2\,\ rate\=\(int\)44100\,\ level\=\(string\)2\,\ base-profile\=\(string\)lc\,\ profile\=\(string\)lc\,\ stream-format\=\(string\)raw\,\ codec_data\=\(buffer\)1210"
/GstPipeline:pipeline0/GstQTMux:m.GstPad:audio_0: caps = "audio/mpeg\,\ mpegversion\=\(int\)4\,\ channels\=\(int\)2\,\ rate\=\(int\)44100\,\ level\=\(string\)2\,\ base-profile\=\(string\)lc\,\ profile\=\(string\)lc\,\ stream-format\=\(string\)raw\,\ codec_data\=\(buffer\)1210"
0:00:00.169560469 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
0:00:00.169682083 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
0:00:00.275240729 22424       0x728940 WARN                 default libde265-dec.c:860:gst_libde265_dec_handle_frame:<libde265dec0> warning: Cannot run decoder multi-threaded because stream does not support WPP (code=1000)
WARNING: from element /GstPipeline:pipeline0/GstLibde265Dec:libde265dec0: Cannot run decoder multi-threaded because stream does not support WPP (code=1000)
Additional debug info:
libde265-dec.c(860): gst_libde265_dec_handle_frame (): /GstPipeline:pipeline0/GstLibde265Dec:libde265dec0
0:00:00.275635260 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
0:00:00.275706406 22424       0x728940 FIXME              h265parse gsth265parse.c:1639:gst_h265_parse_parse_frame:<h265parse0> Implement timestamp/duration interpolation based on SEI message
/GstPipeline:pipeline0/GstLibde265Dec:libde265dec0.GstPad:src: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)3840\,\ height\=\(int\)2160\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt2020\,\ framerate\=\(fraction\)30000/1001"
/GstPipeline:pipeline0/GstVideoScale:videoscale0.GstPad:src: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)1280\,\ height\=\(int\)720\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt2020\,\ framerate\=\(fraction\)30000/1001"
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)1280\,\ height\=\(int\)720\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt2020\,\ framerate\=\(fraction\)30000/1001"
Redistribute latency...
/GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)1280\,\ height\=\(int\)720\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt2020\,\ framerate\=\(fraction\)30000/1001"
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)1280\,\ height\=\(int\)720\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt2020\,\ framerate\=\(fraction\)30000/1001"
0:00:00.330464271 22424       0x728940 WARN               videopool gstvideopool.c:216:video_buffer_pool_set_config:<videobufferpool0> no caps in config
/GstPipeline:pipeline0/GstVideoScale:videoscale0.GstPad:sink: caps = "video/x-raw\,\ format\=\(string\)I420\,\ width\=\(int\)3840\,\ height\=\(int\)2160\,\ interlace-mode\=\(string\)progressive\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ chroma-site\=\(string\)mpeg2\,\ colorimetry\=\(string\)bt2020\,\ framerate\=\(fraction\)30000/1001"
Caught SIGSEGV
Spinning.  Please run 'gdb gst-launch-1.0 22424' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
handling interrupt.
Interrupt: Stopping pipeline ...
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
/GstPipeline:pipeline0/GstQTMux:m.GstPad:audio_0: caps = "NULL"
/GstPipeline:pipeline0/GstX264Enc:x264enc0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/GstVoAacEnc:voaacenc0.GstPad:src: caps = "NULL"
/GstPipeline:pipeline0/GstVoAacEnc:voaacenc0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = "NULL"
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:src: caps = "NULL"
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/GstVideoScale:videoscale0.GstPad:src: caps = "NULL"
/GstPipeline:pipeline0/GstVideoScale:videoscale0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/avdec_aac:avdec_aac0.GstPad:src: caps = "NULL"
/GstPipeline:pipeline0/avdec_aac:avdec_aac0.GstPad:sink: caps = "NULL"
/GstPipeline:pipeline0/GstLibde265Dec:libde265dec0.GstPad:src: caps = "NULL"

--gdb backtrace:
(gdb) backtrace
#0  0x0000007f987b20e0 in __GI___poll (fds=0x424020, nfds=2, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/generic/poll.c:38
#1  0x0000007f988b23c4 in ?? () from /lib/aarch64-linux-gnu/libglib-2.0.so.0
#2  0x00000000004ceae0 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: seg fault on 64 bit ARM

Tim Müller
On Thu, 2017-01-19 at 12:38 -0500, Rand Graham wrote:

Hi,

> Caught SIGSEGV
> Spinning.  Please run 'gdb gst-launch-1.0 22424' to continue
> debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
>  ...
>
> --gdb backtrace:
> (gdb) backtrace
> #0  0x0000007f987b20e0 in __GI___poll (fds=0x424020, nfds=2,
> timeout=<optimized out>) at
> ../sysdeps/unix/sysv/linux/generic/poll.c:38
> #1  0x0000007f988b23c4 in ?? () from /lib/aarch64-linux-gnu/libglib-
> 2.0.so.0
> #2  0x00000000004ceae0 in ?? ()
> Backtrace stopped: previous frame inner to this frame (corrupt
> stack?)

No, we can't tell what's wrong from that. You'll have to debug it.

It's unlikely to be related to that warning debug message.

Start by getting a stack trace of *all* threads, I don't think the
thread you pasted there is the thread that crashes.

 (gdb) thread apply all bt

Cheers
 -Tim

--
Tim Müller, Centricular Ltd - http://www.centricular.com
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

RE: seg fault on 64 bit ARM

Rand Graham
Hi Tim,

I issued the thread apply all bt command. I see that there are many threads and that the pthreads library is in use. Some of the threads seem to be waiting on a mutex. GDB suggests that some of the threads have a stack corruption. I am not sure what to look at next. Do you have any suggestions based on the output below?

Thanks,
Rand

---BEGIN DEBUG LOG---

apply all bt

Thread 20 (Thread 0x7f8fb4d200 (LWP 5056)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f8fbab240, mutex=0x7f8fbab210) at pthread_cond_wait.c:186
#1  0x0000007f960c83f0 in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#2  0x0000007f96b46fb4 in start_thread (arg=0x7f960c8338) at pthread_create.c:335
#3  0x0000007f96ac0390 in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:89

Thread 19 (Thread 0x7f8f34d200 (LWP 5057)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f8fbab240, mutex=0x7f8fbab210) at pthread_cond_wait.c:186
#1  0x0000007f960c83f0 in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#2  0x0000007f96b46fb4 in start_thread (arg=0x7f960c8338) at pthread_create.c:335
#3  0x0000007f96ac0390 in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:89

Thread 18 (Thread 0x7f8eb4d200 (LWP 5058)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f8fbab240, mutex=0x7f8fbab210) at pthread_cond_wait.c:186
#1  0x0000007f960c83f0 in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#2  0x0000007f96b46fb4 in start_thread (arg=0x7f960c8338) at pthread_create.c:335
#3  0x0000007f96ac0390 in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:89

Thread 17 (Thread 0x7f8e34d200 (LWP 5059)):
#0  0x0000007f96b51234 in nanosleep () at ../sysdeps/unix/syscall-template.S:86
#1  0x0000007f96be0fe4 in g_usleep () from /lib/aarch64-linux-gnu/libglib-2.0.so.0
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 16 (Thread 0x7f8db4d200 (LWP 5060)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f8fbab240, mutex=0x7f8fbab210) at pthread_cond_wait.c:186
#1  0x0000007f960c83f0 in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#2  0x0000007f96b46fb4 in start_thread (arg=0x7f960c8338) at pthread_create.c:335
#3  0x0000007f96ac0390 in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:89

Thread 15 (Thread 0x7f8d34d200 (LWP 5061)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f8fbab240, mutex=0x7f8fbab210) at pthread_cond_wait.c:186
#1  0x0000007f960c83f0 in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#2  0x0000007f96b46fb4 in start_thread (arg=0x7f960c8338) at pthread_create.c:335
#3  0x0000007f96ac0390 in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:89
---Type <return> to continue, or q <return> to quit---

Thread 14 (Thread 0x7f8cb4d200 (LWP 5062)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f8fbab240, mutex=0x7f8fbab210) at pthread_cond_wait.c:186
#1  0x0000007f960c83f0 in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#2  0x0000007f96b46fb4 in start_thread (arg=0x7f960c8338) at pthread_create.c:335
#3  0x0000007f96ac0390 in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:89

Thread 13 (Thread 0x7f8c34d200 (LWP 5063)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f8fbab240, mutex=0x7f8fbab210) at pthread_cond_wait.c:186
#1  0x0000007f960c83f0 in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#2  0x0000007f96b46fb4 in start_thread (arg=0x7f960c8338) at pthread_create.c:335
#3  0x0000007f96ac0390 in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:89

Thread 12 (Thread 0x7f8bb4d200 (LWP 5064)):
#0  syscall () at ../sysdeps/unix/sysv/linux/aarch64/syscall.S:38
#1  0x0000007f96bfefd4 in g_cond_wait () from /lib/aarch64-linux-gnu/libglib-2.0.so.0
#2  0x0000007f96377a00 in ?? () from /usr/lib/aarch64-linux-gnu/libgstbase-1.0.so.0
#3  0x0000000000695900 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 11 (Thread 0x7f8b2e8200 (LWP 5065)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f7c00da00, mutex=0x7f7c00d9d0) at pthread_cond_wait.c:186
#1  0x0000007f960abdc0 in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#2  0x0000007f960bab98 in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#3  0x0000007f9609ee7c in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#4  0x0000007f960a1b54 in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#5  0x0000007f960a31f8 in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#6  0x0000007f960a397c in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#7  0x0000007f960a3bf8 in ?? () from /usr/lib/aarch64-linux-gnu/libde265.so.0
#8  0x0000007f96dfc0fc in ?? () from /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstlibde265.so
#9  0x0000000000626560 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 10 (Thread 0x7f8aae8200 (LWP 5066)):
#0  syscall () at ../sysdeps/unix/sysv/linux/aarch64/syscall.S:38
---Type <return> to continue, or q <return> to quit---
#1  0x0000007f96bfefd4 in g_cond_wait () from /lib/aarch64-linux-gnu/libglib-2.0.so.0
#2  0x0000007f96262b78 in ?? () from /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstcoreelements.so
#3  0x000000000061e930 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 9 (Thread 0x7f8a2e8200 (LWP 5067)):
#0  0x0000007f96ab80e0 in __GI___poll (fds=0x7f740008c0, nfds=1, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/generic/poll.c:38
#1  0x0000007f96bb83c4 in ?? () from /lib/aarch64-linux-gnu/libglib-2.0.so.0
#2  0x0000000000000001 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 8 (Thread 0x7f79328200 (LWP 5068)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f7c964e70, mutex=0x7f7c964e40) at pthread_cond_wait.c:186
#1  0x0000007f95de2d84 in ?? () from /usr/lib/aarch64-linux-gnu/libx264.so.148
#2  0x0000007f8b2e5548 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 7 (Thread 0x7f78b28200 (LWP 5069)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f7c964e70, mutex=0x7f7c964e40) at pthread_cond_wait.c:186
#1  0x0000007f95de2d84 in ?? () from /usr/lib/aarch64-linux-gnu/libx264.so.148
#2  0x0000007f8b2e5548 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 6 (Thread 0x7f73fff200 (LWP 5070)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f7c964e70, mutex=0x7f7c964e40) at pthread_cond_wait.c:186
#1  0x0000007f95de2d84 in ?? () from /usr/lib/aarch64-linux-gnu/libx264.so.148
#2  0x0000007f8b2e5548 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 5 (Thread 0x7f737ff200 (LWP 5071)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f7c964e70, mutex=0x7f7c964e40) at pthread_cond_wait.c:186
#1  0x0000007f95de2d84 in ?? () from /usr/lib/aarch64-linux-gnu/libx264.so.148
#2  0x0000007f8b2e5548 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

---Type <return> to continue, or q <return> to quit---
Thread 4 (Thread 0x7f72fff200 (LWP 5072)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f7c964e70, mutex=0x7f7c964e40) at pthread_cond_wait.c:186
#1  0x0000007f95de2d84 in ?? () from /usr/lib/aarch64-linux-gnu/libx264.so.148
#2  0x0000007f8b2e5548 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 3 (Thread 0x7f727ff200 (LWP 5073)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f7c964e70, mutex=0x7f7c964e40) at pthread_cond_wait.c:186
#1  0x0000007f95de2d84 in ?? () from /usr/lib/aarch64-linux-gnu/libx264.so.148
#2  0x0000007f8b2e5548 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0x7f6de11200 (LWP 5074)):
#0  0x0000007f96b4d2fc in __pthread_cond_wait (cond=0x7f7c971ac0, mutex=0x7f7c971a90) at pthread_cond_wait.c:186
#1  0x0000007f95de25d4 in ?? () from /usr/lib/aarch64-linux-gnu/libx264.so.148
#2  0x0000007f8b2e5558 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 1 (Thread 0x7f96e32000 (LWP 5055)):
#0  0x0000007f96ab80e0 in __GI___poll (fds=0x747d30, nfds=2, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/generic/poll.c:38
#1  0x0000007f96bb83c4 in ?? () from /lib/aarch64-linux-gnu/libglib-2.0.so.0
#2  0x00000000004e8b00 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
(gdb)


________________________________________
From: gstreamer-devel [[hidden email]] On Behalf Of Tim Müller [[hidden email]]
Sent: Monday, January 23, 2017 10:19 AM
To: [hidden email]
Subject: Re: seg fault on 64 bit ARM

On Thu, 2017-01-19 at 12:38 -0500, Rand Graham wrote:

Hi,

> Caught SIGSEGV
> Spinning.  Please run 'gdb gst-launch-1.0 22424' to continue
> debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
>  ...
>
> --gdb backtrace:
> (gdb) backtrace
> #0  0x0000007f987b20e0 in __GI___poll (fds=0x424020, nfds=2,
> timeout=<optimized out>) at
> ../sysdeps/unix/sysv/linux/generic/poll.c:38
> #1  0x0000007f988b23c4 in ?? () from /lib/aarch64-linux-gnu/libglib-
> 2.0.so.0
> #2  0x00000000004ceae0 in ?? ()
> Backtrace stopped: previous frame inner to this frame (corrupt
> stack?)

No, we can't tell what's wrong from that. You'll have to debug it.

It's unlikely to be related to that warning debug message.

Start by getting a stack trace of *all* threads, I don't think the
thread you pasted there is the thread that crashes.

 (gdb) thread apply all bt

Cheers
 -Tim

--
Tim Müller, Centricular Ltd - http://www.centricular.com
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: seg fault on 64 bit ARM

Prabhakar Lad
In reply to this post by Rand Graham
Hi,

On Thu, Jan 19, 2017 at 5:38 PM, Rand Graham <[hidden email]> wrote:

> Hello,
>
> I am trying to run a gst-launch pipeline on 64 bit ARM architecture. The only warning I see is from libde265dec. "dec.c:860:gst_libde265_dec_handle_frame:<libde265dec0> [00m warning: Cannot run decoder multi-threaded because stream does not support WPP (code=1000)"
>
> Can you tell what the problem is from the following debug output?
>
> The pipeline:
>
> gst-launch-1.0 -v -e  --gst-debug-level=3  qtmux name=m ! filesink location=uhd1280x720swenc.mp4 filesrc location=uhd.trp ! tsdemux name=dem dem. ! queue ! h265parse ! libde265dec ! videoscale ! 'video/x-raw, width=(int)1280, height=(int)720, format=(string)I420' ! x264enc dct8x8=true ! m. dem. ! queue ! avdec_aac ! audioconvert ! voaacenc ! m.
>
Firstly to rule out the hardware/kernel issue, I would first run the
pipeline on a 64 bit machine (desktop) and see if gstreamer itself
having this issue.

Cheers,
--Prabhakar Lad
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel