Skip to content

Crash on playback #120

@dnehring7

Description

@dnehring7

vdr crashes deterministically when starting a playback under the following circumstances:

the current channel is deinterlaced by vaapi (for me: motion-compensated). Instanty, after starting a playbay, vaapidevice crashes. If I disable deinterlacing, everything works. Attached is a backtrace and the system info:

BACKTRACE

Thread 14 "vaapi video" received signal SIGSEGV, Segmentation fault.
[Switching to LWP 9116]
0x00007fd431b14a01 in ?? () from /lib64/libdrm_intel.so.1
(gdb) bt
#0  0x00007fd431b14a01 in  () at /lib64/libdrm_intel.so.1
#1  0x00007fd431dcaec5 in intel_batchbuffer_emit_reloc64 ()
    at /usr/lib64/dri/i965_drv_video.so
#2  0x00007fd431d817df in bdw_veb_dndi_iecp_command ()
    at /usr/lib64/dri/i965_drv_video.so
#3  0x00007fd431d819f0 in gen8_vebox_process_picture ()
    at /usr/lib64/dri/i965_drv_video.so
#4  0x00007fd431d7c550 in gen75_proc_picture ()
    at /usr/lib64/dri/i965_drv_video.so
#5  0x00007fd46c750d44 in vaEndPicture () at /lib64/libva.so.2
#6  0x00007fd44d357000 in VaapiPostprocessSurface (ctx=33554433, src=<optimized out>, dst=67108895, filters=filters@entry=0x7fd4267fb5f0, num_filters=<optimized out>, filter_flags=filter_flags@entry=40, pipeline_flags=0, frefs=0x55c51bf9bd70, num_frefs=1, brefs=0x7fd40c000c40, num_brefs=0) at video.c:1721
#7  0x00007fd44d357e71 in VaapiPostprocessSurface (num_brefs=0, brefs=<optimized out>, num_frefs=1, frefs=<optimized out>, pipeline_flags=0, filter_flags=40, num_filters=<optimized out>, filters=0x7fd4267fb5f0, dst=<optimized out>, src=<optimized out>, ctx=<optimized out>) at video.c:1681
#8  0x00007fd44d357e71 in VaapiApplyFilters (decoder=decoder@entry=0x55c51b4c3050, top_field=<optimized out>) at video.c:1875
#9  0x00007fd44d358281 in VaapiQueueSurface (
    decoder=decoder@entry=0x55c51b4c3050, surface=surface@entry=67108867, softdec=0) at video.c:3083
#10 0x00007fd44d358e7f in VaapiRenderFrame (decoder=decoder@entry=0x55c51b4c3050, video_ctx=video_ctx@entry=0x7fd40c018080, frame=frame@entry=0x7fd40c09b900)
    at video.c:3332
#11 0x00007fd44d359b79 in VaapiSyncRenderFrame (decoder=0x55c51b4c3050, video_ctx=0x7fd40c018080, frame=0x7fd40c09b900) at video.c:3850
#12 0x00007fd44d360d43 in CodecVideoDecode (decoder=0x55c51fc7c270, avpkt=avpkt@entry=0x7fd44d572b20 <MyVideoStream+13344>) at codec.c:284
#13 0x00007fd44d351d11 in VideoDecodeInput (stream=0x7fd44d56f700 <MyVideoStream>) at vaapidev.c:963
#14 0x00007fd44d35690d in VaapiDisplayHandlerThread () at video.c:3929
#15 0x00007fd44d35c184 in VideoDisplayHandlerThread (dummy=<optimized out>)
    at video.c:4555
#16 0x00007fd4743c7594 in  () at /lib64/libpthread.so.0
#17 0x00007fd472a13fdf in clone () at /lib64/libc.so.6
(gdb) frame 6
#6  0x00007fd44d357000 in VaapiPostprocessSurface (ctx=33554433,
    src=<optimized out>, dst=67108895, filters=filters@entry=0x7fd4267fb5f0,
    num_filters=<optimized out>, filter_flags=filter_flags@entry=40,
    pipeline_flags=0, frefs=0x55c51bf9bd70, num_frefs=1, brefs=0x7fd40c000c40,
    num_brefs=0) at video.c:1721
1721        vaEndPicture(VaDisplay, ctx);
(gdb) frame 7
#7  0x00007fd44d357e71 in VaapiPostprocessSurface (num_brefs=0,
    brefs=<optimized out>, num_frefs=1, frefs=<optimized out>,
    pipeline_flags=0, filter_flags=40, num_filters=<optimized out>,
    filters=0x7fd4267fb5f0, dst=<optimized out>, src=<optimized out>,
    ctx=<optimized out>) at video.c:1681
1681        if (src == VA_INVALID_ID || dst == VA_INVALID_ID || src == dst)
(gdb) frame 8
#8  VaapiApplyFilters (decoder=decoder@entry=0x55c51b4c3050,
    top_field=<optimized out>) at video.c:1875
1875            VaapiPostprocessSurface(decoder->vpp_ctx, decoder->PlaybackSurface, *surface, filters_to_run, filter_count,
(gdb) frame 9
#9  0x00007fd44d358281 in VaapiQueueSurface (
    decoder=decoder@entry=0x55c51b4c3050, surface=surface@entry=67108867,
    softdec=0) at video.c:3083
3083        firstfield = VaapiApplyFilters(decoder, decoder->TopFieldFirst ? 1 : 0);
(gdb) frame 10
#10 0x00007fd44d358e7f in VaapiRenderFrame (
    decoder=decoder@entry=0x55c51b4c3050,
    video_ctx=video_ctx@entry=0x7fd40c018080, frame=frame@entry=0x7fd40c09b900)
    at video.c:3332
3332            VaapiQueueSurface(decoder, surface, 0);
(gdb) frame 11
#11 0x00007fd44d359b79 in VaapiSyncRenderFrame (decoder=0x55c51b4c3050,
    video_ctx=0x7fd40c018080, frame=0x7fd40c09b900) at video.c:3850
3850        VaapiRenderFrame(decoder, video_ctx, frame);
(gdb) frame 12
#12 0x00007fd44d360d43 in CodecVideoDecode (decoder=0x55c51fc7c270,
    avpkt=avpkt@entry=0x7fd44d572b20 <MyVideoStream+13344>) at codec.c:284
284                 VideoRenderFrame(decoder->HwDecoder, video_ctx, frame);

VAAPIDEVICE SYSTEM INFORMATION REPORT

inxi
System:    Kernel: 4.16.11-300.fc28.x86_64 x86_64 bits: 64 gcc: 8.1.1
           Desktop: Openbox 3.6.1 Distro: Fedora release 28 (Twenty Eight)
Machine:   Device: desktop Mobo: Intel model: NUC5PPYB v: H76558-102 serial: N/A
           UEFI [Legacy]: Intel v: PYBSWCEL.86A.0069.2018.0314.1745 date: 03/14/2018
CPU:       Quad core Intel Pentium N3700 (-MCP-)
           arch: Airmont rev.3 cache: 1024 KB
           flags: (lm nx sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx) bmips: 12800
           clock speeds: max: 2400 MHz 1: 1854 MHz 2: 1117 MHz 3: 991 MHz
           4: 963 MHz
Graphics:  Card: Intel Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Integrated Graphics Controller
           bus-ID: 00:02.0
           Display Server: X.org 119.6 driver: modesetting
           Resolution: 1920x1080@50.00hz
           OpenGL: renderer: Mesa DRI Intel HD Graphics 405 (Braswell)
           version: 4.5 Mesa 18.0.2 Direct Render: Yes
Audio:     Card Intel Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series High Def. Audio Controller
           driver: snd_hda_intel bus-ID: 00:1b.0
           Sound: ALSA v: k4.16.11-300.fc28.x86_64
vainfo
vainfo: VA-API version: 1.1 (libva 2.1.0)
vainfo: Driver version: Intel i965 driver for Intel(R) CherryView - 2.1.0
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Simple            : VAEntrypointEncSlice
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointEncSlice
      VAProfileH264High               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointEncSlice
      VAProfileH264MultiviewHigh      : VAEntrypointVLD
      VAProfileH264MultiviewHigh      : VAEntrypointEncSlice
      VAProfileH264StereoHigh         : VAEntrypointVLD
      VAProfileH264StereoHigh         : VAEntrypointEncSlice
      VAProfileVC1Simple              : VAEntrypointVLD
      VAProfileVC1Main                : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD
      VAProfileNone                   : VAEntrypointVideoProc
      VAProfileJPEGBaseline           : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointEncPicture
      VAProfileVP8Version0_3          : VAEntrypointVLD
      VAProfileVP8Version0_3          : VAEntrypointEncSlice
      VAProfileHEVCMain               : VAEntrypointVLD
ffmpeg
ffmpeg version N-90340-g32dbee4462 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 8 (GCC)
libavutil      56. 10.100 / 56. 10.100
libavcodec     58. 14.100 / 58. 14.100
libavformat    58. 10.100 / 58. 10.100
libavdevice    58.  2.100 / 58.  2.100
libavfilter     7. 13.100 /  7. 13.100
libswscale      5.  0.102 /  5.  0.102
libswresample   3.  0.101 /  3.  0.101
libpostproc    55.  0.100 / 55.  0.100
gcc
8
svdrpsend
220 nuc.home.loc SVDRP VideoDiskRecorder 2.4.0; Sun May 27 19:00:35 2018; UTF-8
900- Frames: missed(0) duped(21958) dropped(20) total(16158) PTS( 3:15:53.248) drift(54) audio(447) video(0)
900- Video: h264/vaapi_vld 1920x1080i 16:9 @ 1920x1080 - Intel i965 driver for Intel(R) CherryView - 2.1.0
900- Audio: ac3 48000Hz 2 channels
900 Command: vaapidevice -a pcm.51to20 -f -d :0.0
221 nuc.home.loc closing connection
INCLUDE THIS REPORT INTO YOUR GITHUB ISSUE

Dirk

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions