On Sat, Sep 05, 2020 at 03:18:21AM +0200, Klemens Nanni wrote: > Latest mpv on snapshots on my X250 dumps core whenever I quit playing > with `q' or `Q'; I have no mpv config and this happens regardless of > any values for the vm.malloc_conf and hw.smt sysctls: > > $ sysctl -n kern.version > OpenBSD 6.8-beta (GENERIC.MP) #55: Tue Sep 1 01:01:32 MDT 2020 > dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP > > $ pkg_info -m | grep mpv > mpv-0.32.0 movie player based on MPlayer/mplayer2 > > $ rm -r ~/.config/mpv/ > rm: /home/kn/.config/mpv: No such file or directory > $ mpv http://url/some.mkv > mpv `xclip -o` > Resuming playback. This behavior can be disabled with > --no-resume-playback. > (+) Video --vid=1 (*) (h264 1904x1068 23.976fps) > (+) Audio --aid=1 --alang=eng (*) (aac 2ch 48000Hz) > AO: [sdl] 48000Hz stereo 2ch s32 > VO: [gpu] 1904x1068 yuv420p > > > Exiting... (Quit) > pthread_mutex_destroy on mutex with waiters! > Segmentation fault (core dumped) > > The pthread_mutex_destroy line has always been there but dumping core > is new behaviour, it most certainly started after upgrading to a newer > snapshot around one or two weeks ago and/or moving my installation/SSD > from an X230 to an X250 thinkpad (same config, just hardware swap). > > $ egdb --quiet -se `which mpv` -c ./mpv.core -batch -ex bt -ex l > [New process 256621] > [New process 165240] > [New process 528996] > [New process 170944] > Core was generated by `mpv'. > Program terminated with signal SIGSEGV, Segmentation fault. > #0 0x000007e975d313e0 in ?? () > [Current thread is 1 (process 256621)] > #0 0x000007e975d313e0 in ?? () > #1 0x000007e8a562a505 in _rthread_tls_destructors > (thread=0x7e8785bdc40) at /usr/src/lib/libc/thread/rthread_tls.c:182 > #2 0x000007e8a5693ac3 in _libc_pthread_exit (retval=<optimized out>) > at /usr/src/lib/libc/thread/rthread.c:150 > #3 0x000007e902c2d1d9 in _rthread_start (v=<optimized out>) at > /usr/src/lib/librthread/rthread.c:97 > #4 0x000007e8a56505a8 in __tfork_thread () at > /usr/src/lib/libc/arch/amd64/sys/tfork_thread.S:77 > #5 0x0000000000000000 in ?? () > 1 #include "main-fn.h" > 2 > 3 int main(int argc, char *argv[]) > 4 { > 5 return mpv_main(argc, argv); > 6 } > > Now idea what's happening here. > Can someone else reproduce?
For the archives: this regression was fixed. Not sure if the libc/phtread/emutls changes or the mpv 0.34.0 update did it, but there are no segfaults on quit anymore!