[FFmpeg-trac] #178(FFserver:new): ffserver segfault

FFmpeg trac at avcodec.org
Mon May 9 14:35:40 CEST 2011


#178: ffserver segfault
------------------------+----------------------
  Reporter:  andrixnet  |      Owner:  baptiste
      Type:  defect     |     Status:  new
  Priority:  normal     |  Component:  FFserver
   Version:  git        |   Keywords:
Blocked By:             |   Blocking:
Reproduced:  0          |   Analyzed:  0
------------------------+----------------------
 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 at gate:~/62# bt
 bash: bt: command not found
 root at 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}}

 }}}

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/178>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list