[Bug 222118] multimedia/handbrake handbrake dumps core when navigating to select source

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Oct 25 13:41:44 UTC 2017


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=222118

--- Comment #17 from naito.yuichiro at gmail.com ---
I'm wondering why Handbrake fails by segmentation fault.
Gdb shows following stack trace.
It seems segmentation fault occurs when thread is created.
In Handbrake application,
threads are created in many components (gtk and graphic components) very often.

```
Core was generated by `/usr/local/bin/ghb'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  x86_64_freebsd_fallback_frame_state (context=0x7fffdedf4e20,
    context=0x7fffdedf4e20, fs=0x7fffdedf4b70) at ./md-unwind-support.h:60
60      ./md-unwind-support.h: No such file or directory.
[Current thread is 1 (LWP 100099)]
(gdb) bt
#0  x86_64_freebsd_fallback_frame_state (context=0x7fffdedf4e20,
    context=0x7fffdedf4e20, fs=0x7fffdedf4b70) at ./md-unwind-support.h:60
#1  uw_frame_state_for (context=context at entry=0x7fffdedf4e20,
    fs=fs at entry=0x7fffdedf4b70)
    at /usr/ports/lang/gcc6/work/gcc-6.4.0/libgcc/unwind-dw2.c:1249
#2  0x0000000808141ffb in _Unwind_ForcedUnwind_Phase2 (
    exc=exc at entry=0x8145d7430, context=context at entry=0x7fffdedf4e20)
    at /usr/ports/lang/gcc6/work/gcc-6.4.0/libgcc/unwind.inc:155
#3  0x0000000808142334 in _Unwind_ForcedUnwind (exc=0x8145d7430,
    stop=0x8061cb7b0 <thread_unwind_stop>, stop_argument=<optimized out>)
    at /usr/ports/lang/gcc6/work/gcc-6.4.0/libgcc/unwind.inc:207
#4  0x00000008061cb613 in _Unwind_ForcedUnwind (ex=<optimized out>,
    stop_func=0x7fffdedf4948, stop_arg=0x8145d7200)
    at /usr/src/lib/libthr/thread/thr_exit.c:106
#5  thread_unwind () at /usr/src/lib/libthr/thread/thr_exit.c:172
#6  _pthread_exit_mask (status=<optimized out>, mask=<optimized out>)
    at /usr/src/lib/libthr/thread/thr_exit.c:257
#7  0x00000008061cb42b in _pthread_exit (status=0x8145d7200)
    at /usr/src/lib/libthr/thread/thr_exit.c:206
#8  0x00000008061bdbcd in thread_start (curthread=0x8145d7200)
    at /usr/src/lib/libthr/thread/thr_create.c:289
#9  0x00007fffdebf5000 in ?? ()
Backtrace stopped: Cannot access memory at address 0x7fffdedf5000
```

I don't know why #9 stack points to unknown function address.
It seems as same as following topic of current-ml.

https://lists.freebsd.org/pipermail/freebsd-current/2017-August/066855.html

If the reason of this problem is same as the topic,
using gcc-4.9 is a good answer now.

After the topic is fixed,
we can change to use gcc6 or later.

I think Handbrake source codes are intended to be compiled by gcc not clang.
If we change the compiler, we need to patch more source code.
And most of patches could be patch of patches.

If my opinion is acceptable,
please apply "patch_handbrake_107_2" to Ports tree.

I will be a maintainer of this port,
and watch the topic.

Also I'm planning to upgrade Handbrake-1.1.0, when it's released.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-ports-bugs mailing list