seg fault on 64 bit ARM

Rand Graham rand.graham at lge.com
Mon Jan 23 21:14:41 UTC 2017


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 [gstreamer-devel-bounces at lists.freedesktop.org] On Behalf Of Tim Müller [tim at centricular.com]
Sent: Monday, January 23, 2017 10:19 AM
To: gstreamer-devel at lists.freedesktop.org
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
gstreamer-devel at lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


More information about the gstreamer-devel mailing list