Opened 5 years ago

Closed 5 years ago

#3274 closed defect (fixed)

vp9: deadlock with fuzzed file

Reported by: ami_stuff Owned by:
Priority: important Component: avcodec
Version: git-master Keywords: vp9 deadlock regression
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

(gdb) r -i vp9_d.webm -f null -
Starting program: /media/sdb1/ffmpeg-HEAD-8a0d446/ffmpeg_g -i vp9_d.webm -f null -
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
ffmpeg version 2.1.git-8a0d446 Copyright (c) 2000-2013 the FFmpeg developers
  built on Dec 29 2013 20:43:02 with gcc 4.7 (Debian 4.7.2-5)
  configuration: --disable-yasm --enable-gpl --disable-ffprobe --disable-ffserver
  libavutil      52. 59.100 / 52. 59.100
  libavcodec     55. 47.100 / 55. 47.100
  libavformat    55. 22.100 / 55. 22.100
  libavdevice    55.  5.102 / 55.  5.102
  libavfilter     4.  0.103 /  4.  0.103
  libswscale      2.  5.101 /  2.  5.101
  libswresample   0. 17.104 /  0. 17.104
  libpostproc    52.  3.100 / 52.  3.100
Input #0, matroska,webm, from 'vp9_d.webm':
  Duration: 00:00:12.64, start: 0.000000, bitrate: 206 kb/s
    Stream #0:0: Video: vp9, yuv420p, 320x240, SAR 1:1 DAR 4:3, 23.97 fps, 23.97 tbr, 1k tbn, 1k tbc (default)
[New Thread 0xb7df8b70 (LWP 20960)]
[New Thread 0xb75f8b70 (LWP 20961)]
[New Thread 0xb6df8b70 (LWP 20962)]
[New Thread 0xb65f8b70 (LWP 20963)]
[New Thread 0xb5df8b70 (LWP 20964)]
[New Thread 0xb55f8b70 (LWP 20965)]
[New Thread 0xb4df8b70 (LWP 20966)]
[New Thread 0xb45f8b70 (LWP 20967)]
[New Thread 0xb3df8b70 (LWP 20968)]
[New Thread 0xb35f8b70 (LWP 20969)]
[New Thread 0xb2df8b70 (LWP 20970)]
[New Thread 0xb25f8b70 (LWP 20971)]
[New Thread 0xb1df8b70 (LWP 20972)]
[New Thread 0xb15f8b70 (LWP 20973)]
[New Thread 0xb0df8b70 (LWP 20974)]
[New Thread 0xb05f8b70 (LWP 20975)]
[New Thread 0xafdf8b70 (LWP 20976)]
[New Thread 0xaf5f8b70 (LWP 20977)]
Output #0, null, to 'pipe:':
  Metadata:
    encoder         : Lavf55.22.100
    Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 320x240 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 90k tbn, 23.97 tbc (default)
Stream mapping:
  Stream #0:0 -> #0:0 (vp9 -> rawvideo)
Press [q] to stop, [?] for help
[null @ 0x92a02e0] Encoder did not produce proper pts, making some up.
Error while decoding stream #0:0: Invalid data found when processing input

Program received signal SIGINT, Interrupt.
0xb7f8bea5 in __pthread_cond_wait (cond=0x929d704, mutex=0x929d74c)
    at pthread_cond_wait.c:153
153	pthread_cond_wait.c: No such file or directory.
(gdb) bt
#0  0xb7f8bea5 in __pthread_cond_wait (cond=0x929d704, mutex=0x929d74c)
    at pthread_cond_wait.c:153
#1  0x0862bf0c in ff_thread_decode_frame (avctx=avctx@entry=0x929f9c0, 
    picture=picture@entry=0x930d8a0, 
    got_picture_ptr=got_picture_ptr@entry=0xbffff504, 
    avpkt=avpkt@entry=0xbffff2a8) at libavcodec/pthread_frame.c:445
#2  0x086d7872 in avcodec_decode_video2 (avctx=0x929f9c0, 
    picture=picture@entry=0x930d8a0, 
    got_picture_ptr=got_picture_ptr@entry=0xbffff504, 
    avpkt=avpkt@entry=0xbffff750) at libavcodec/utils.c:2098
#3  0x080c187d in decode_video (ist=ist@entry=0x92a0060, 
    pkt=pkt@entry=0xbffff750, got_output=got_output@entry=0xbffff504)
    at ffmpeg.c:1694
#4  0x080c59aa in output_packet (pkt=0xbffff6e8, ist=0x92a0060)
    at ffmpeg.c:1907
#5  process_input (file_index=1) at ffmpeg.c:3216
#6  0x080aa85b in transcode_step () at ffmpeg.c:3312
#7  transcode () at ffmpeg.c:3364
#8  main (argc=<optimized out>, argv=<optimized out>) at ffmpeg.c:3544
(gdb) 

Attachments (1)

vp9_d.webm (318.7 KB) - added by ami_stuff 5 years ago.

Download all attachments as: .zip

Change History (5)

Changed 5 years ago by ami_stuff

comment:1 Changed 5 years ago by cehoyos

  • Component changed from undetermined to avcodec
  • Keywords vp9 deadlock added
  • Priority changed from normal to important
  • Version changed from unspecified to git-master

comment:2 Changed 5 years ago by cehoyos

  • Keywords regression added
  • Reproduced by developer set
  • Status changed from new to open

Regression since 76bd878d

comment:3 Changed 5 years ago by cehoyos

Still reproducible:

(gdb) r -i vp9_d.webm -f null -
Starting program:ffmpeg_g -i vp9_d.webm -f null -
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
ffmpeg version N-59694-g2be1e1b Copyright (c) 2000-2014 the FFmpeg developers
  built on Jan  9 2014 00:02:05 with gcc 4.7 (SUSE Linux)
  configuration: --enable-gpl
  libavutil      52. 62.100 / 52. 62.100
  libavcodec     55. 47.100 / 55. 47.100
  libavformat    55. 22.102 / 55. 22.102
  libavdevice    55.  5.102 / 55.  5.102
  libavfilter     4.  0.103 /  4.  0.103
  libswscale      2.  5.101 /  2.  5.101
  libswresample   0. 17.104 /  0. 17.104
  libpostproc    52.  3.100 / 52.  3.100
Input #0, matroska,webm, from 'vp9_d.webm':
  Metadata:
    encoder         : Lavf55.22.102
  Duration: 00:00:12.64, start: 0.000000, bitrate: 206 kb/s
    Stream #0:0: Video: vp9, yuv420p, 320x240, SAR 1:1 DAR 4:3, 23.97 fps, 23.97 tbr, 1k tbn, 1k tbc (default)
[New Thread 0x7ffff57e5700 (LWP 6269)]
[New Thread 0x7ffff4fe4700 (LWP 6270)]
[New Thread 0x7ffff47e3700 (LWP 6271)]
[New Thread 0x7ffff3fe2700 (LWP 6272)]
[New Thread 0x7ffff37e1700 (LWP 6273)]
[New Thread 0x7ffff2fe0700 (LWP 6274)]
[New Thread 0x7ffff27df700 (LWP 6275)]
[New Thread 0x7ffff1fde700 (LWP 6276)]
[New Thread 0x7ffff17dd700 (LWP 6277)]
[New Thread 0x7ffff0fdc700 (LWP 6278)]
[New Thread 0x7ffff07db700 (LWP 6279)]
[New Thread 0x7fffeffda700 (LWP 6280)]
[New Thread 0x7fffef7d9700 (LWP 6281)]
[New Thread 0x7fffeefd8700 (LWP 6282)]
[New Thread 0x7fffee7d7700 (LWP 6283)]
[New Thread 0x7fffedfd6700 (LWP 6284)]
[New Thread 0x7fffed7d5700 (LWP 6285)]
[New Thread 0x7fffecfd4700 (LWP 6286)]
Output #0, null, to 'pipe:':
  Metadata:
    encoder         : Lavf55.22.102
    Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 320x240 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 90k tbn, 23.97 tbc (default)
Stream mapping:
  Stream #0:0 -> #0:0 (vp9 -> rawvideo)
Press [q] to stop, [?] for help
[null @ 0x1897ea0] Encoder did not produce proper pts, making some up.
Error while decoding stream #0:0: Invalid data found when processing input

Program received signal SIGINT, Interrupt.
0x00007ffff6ae68f4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
(gdb) bt
#0  0x00007ffff6ae68f4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x0000000000995d9b in ff_thread_decode_frame (avctx=avctx@entry=0x1893960,
    picture=picture@entry=0x190c160,
    got_picture_ptr=got_picture_ptr@entry=0x7fffffffd7dc,
    avpkt=avpkt@entry=0x7fffffffd560) at libavcodec/pthread_frame.c:452
#2  0x0000000000a40a38 in avcodec_decode_video2 (avctx=0x1893960,
    picture=picture@entry=0x190c160,
    got_picture_ptr=got_picture_ptr@entry=0x7fffffffd7dc,
    avpkt=avpkt@entry=0x7fffffffda40) at libavcodec/utils.c:2120
#3  0x000000000047a400 in decode_video (ist=ist@entry=0x1893fc0,
    pkt=pkt@entry=0x7fffffffda40, got_output=got_output@entry=0x7fffffffd7dc)
    at ffmpeg.c:1694
#4  0x000000000047d7ef in output_packet (pkt=0x7fffffffd9e0, ist=0x1893fc0)
    at ffmpeg.c:1907
#5  process_input (file_index=<optimized out>) at ffmpeg.c:3216
#6  0x0000000000465a80 in transcode_step () at ffmpeg.c:3312
#7  transcode () at ffmpeg.c:3364
#8  main (argc=<optimized out>, argv=<optimized out>) at ffmpeg.c:3544

comment:4 Changed 5 years ago by cehoyos

  • Resolution set to fixed
  • Status changed from open to closed

Fixed by Ronald in 0065d2d5

Note: See TracTickets for help on using tickets.