Opened 14 years ago
Closed 14 years ago
#178 closed defect (fixed)
ffserver segfault
Reported by: | andrixnet | Owned by: | baptiste |
---|---|---|---|
Priority: | normal | Component: | ffserver |
Version: | git | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
Using may 8th snapshot, I seem to be unable to use ffserver.
Simply running it with the sample configuration file, I get segfault.
The only thing I changed was commenting these 2 lines in the sample :
#File /tmp/feed1.ffm
#FileMaxSize 200K
gdb ffserver_g GNU gdb 6.8 Copyright (C) 2008 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 "i486-slackware-linux"... (gdb) r -f ./ffserver.conf Starting program: /root/62/ffserver_g -f ./ffserver.conf [Thread debugging using libthread_db enabled] ffserver version 2011-05-09, Copyright (c) 2000-2011 the FFmpeg developers built on May 9 2011 15:27:56 with gcc 4.2.4 configuration: --prefix=/usr --libdir=/usr/lib --shlibdir=/usr/lib --mandir=/usr/man - -disable-debug --enable-shared --enable-static --enable-pthreads --enable-gpl --enable-v ersion3 --enable-postproc --enable-avfilter --enable-avdevice --enable-avcodec --enable- avformat --enable-runtime-cpudetect --disable-vdpau --disable-vaapi --disable-dxva2 --en able-memalign-hack --enable-swscale --enable-fastdiv --enable-x11grab --enable-bzlib --e nable-zlib --enable-libtheora --enable-libvorbis --enable-libopenjpeg --enable-libdc1394 --enable-libmp3lame --enable-libfaac --enable-libxvid --enable-libx264 --enable-libspee x --enable-libdirac --enable-libschroedinger --enable-nonfree --enable-libgsm --enable-l ibvpx --enable-librtmp --enable-libopencore-amrnb --enable-libopencore-amrwb --extra-cfl ags='-I/usr/include -DRUNTIME_CPUDETECT' --extra-ldflags='-L/usr/lib -lssl -lcrypto -lz -lusb' libavutil 51. 2. 1 / 51. 2. 1 libavcodec 53. 5. 0 / 53. 5. 0 libavformat 53. 0. 3 / 53. 0. 3 libavdevice 53. 0. 0 / 53. 0. 0 libavfilter 2. 5. 0 / 2. 5. 0 libswscale 0. 14. 0 / 0. 14. 0 libpostproc 51. 2. 0 / 51. 2. 0 [1]+ Stopped gdb ffserver_g root@gate:~/62# bt bash: bt: command not found root@gate:~/62# fg %1 gdb ffserver_g [New Thread 0xb647b6d0 (LWP 15875)] Program received signal SIGTTOU, Stopped (tty output). [Switching to Thread 0xb647b6d0 (LWP 15875)] 0xb70b1d4e in __write_nocancel () from /lib/libc.so.6
(gdb) bt #0 0xb70b1d4e in __write_nocancel () from /lib/libc.so.6 #1 0xb7051054 in _IO_new_file_write () from /lib/libc.so.6 #2 0xb7050cf5 in new_do_write () from /lib/libc.so.6 #3 0xb7050fff in _IO_new_do_write () from /lib/libc.so.6 #4 0xb7051909 in _IO_new_file_overflow () from /lib/libc.so.6 #5 0xb7050eac in _IO_new_file_xsputn () from /lib/libc.so.6 #6 0xb702a3ef in vfprintf () from /lib/libc.so.6 #7 0x0804cafc in http_vlog () #8 0xb71344c0 in ?? () from /lib/libc.so.6 #9 0x0805be58 in ?? () #10 0xbfac6d44 in ?? () #11 0xb80ca660 in _r_debug () #12 0xbfac6d20 in ?? () #13 0xb80bb729 in _dl_fixup () from /lib/ld-linux.so.2 #14 0x00000000 in ?? ()
(gdb) disass $pc-32 $pc+32 Dump of assembler code from 0xb70b1d2e to 0xb70b1d6e: 0xb70b1d2e <read+110>: jmp 0xb70b1d12 <read+82> 0xb70b1d30 <write+0>: cmpl $0x0,%gs:0xc 0xb70b1d38 <write+8>: jne 0xb70b1d57 <write+39> 0xb70b1d3a <__write_nocancel+0>: push %ebx 0xb70b1d3b <__write_nocancel+1>: mov 0x10(%esp),%edx 0xb70b1d3f <__write_nocancel+5>: mov 0xc(%esp),%ecx 0xb70b1d43 <__write_nocancel+9>: mov 0x8(%esp),%ebx 0xb70b1d47 <__write_nocancel+13>: mov $0x4,%eax 0xb70b1d4c <__write_nocancel+18>: int $0x80 0xb70b1d4e <__write_nocancel+20>: pop %ebx 0xb70b1d4f <__write_nocancel+21>: cmp $0xfffff001,%eax 0xb70b1d54 <__write_nocancel+26>: jae 0xb70b1d83 <write+83> 0xb70b1d56 <__write_nocancel+28>: ret 0xb70b1d57 <write+39>: call 0xb70cde00 <__libc_enable_asynccancel> 0xb70b1d5c <write+44>: push %eax 0xb70b1d5d <write+45>: push %ebx 0xb70b1d5e <write+46>: mov 0x14(%esp),%edx 0xb70b1d62 <write+50>: mov 0x10(%esp),%ecx 0xb70b1d66 <write+54>: mov 0xc(%esp),%ebx 0xb70b1d6a <write+58>: mov $0x4,%eax End of assembler dump.
(gdb) info all-registers eax 0xfffffe00 -512 ecx 0xb80ac000 -1207255040 edx 0x5d 93 ebx 0x1 1 esp 0xbfac6614 0xbfac6614 ebp 0xbfac6630 0xbfac6630 esi 0x5d 93 edi 0xb80ac000 -1207255040 eip 0xb70b1d4e 0xb70b1d4e <__write_nocancel+20> eflags 0x200246 [ PF ZF IF ID ] cs 0x73 115 ss 0x7b 123 ds 0x7b 123 es 0x7b 123 fs 0x0 0 gs 0x33 51 st0 0 (raw 0x00000000000000000000) st1 0 (raw 0x00000000000000000000) st2 0 (raw 0x00000000000000000000) st3 0 (raw 0x00000000000000000000) st4 -1 (raw 0xbfff8000000000000000) st5 -1 (raw 0xbfff8000000000000000) st6 1 (raw 0x3fff8000000000000000) st7 1 (raw 0x3fff8000000000000000) fctrl 0x37f 895 fstat 0x20 32 ftag 0xffff 65535 fiseg 0x73 115 fioff 0xb715bc27 -1223312345 foseg 0x7b 123 fooff 0xbfac7164 -1079217820 fop 0x1c9 457 xmm0 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = { 0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000} xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = { 0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000} xmm2 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = { 0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000} xmm3 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = { 0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000} xmm4 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = { 0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000} xmm5 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = { 0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000} xmm6 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = { 0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000} xmm7 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = { 0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000} mxcsr 0x1f80 [ IM DM ZM OM UM PM ] mm0 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}} mm1 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}} mm2 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}} mm3 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}} mm4 {uint64 = 0x8000000000000000, v2_int32 = {0x0, 0x80000000}, v4_int16 = { 0x0, 0x0, 0x0, 0x8000}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80}} mm5 {uint64 = 0x8000000000000000, v2_int32 = {0x0, 0x80000000}, v4_int16 = { 0x0, 0x0, 0x0, 0x8000}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80}} mm6 {uint64 = 0x8000000000000000, v2_int32 = {0x0, 0x80000000}, v4_int16 = { 0x0, 0x0, 0x0, 0x8000}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80}} mm7 {uint64 = 0x8000000000000000, v2_int32 = {0x0, 0x80000000}, v4_int16 = { 0x0, 0x0, 0x0, 0x8000}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80}}
Change History (4)
comment:1 by , 14 years ago
comment:3 by , 14 years ago
No. The snapshot I took for testing already contained this patch and ffserver started just fine.
Today, ffserver starts just fine at release 0.8.
(sorry for the delayed reply).
comment:4 by , 14 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Note:
See TracTickets
for help on using tickets.
Possible fixes for ffserver: