GPU Hang while using GStreamer
- Dominant language
- C
- Stars
- 784
- Forks
- 314
- PR merge metrics
- No merged PRs in 30d
Description
GPU hang while using GStreamer in a WebRTC call.
GStreamer is simultaneously encoding and decoding VP8 (in 1080p) using VAAPI. The hang occurs very quickly (less than 5 minutes) when the bandwidth is limited and packets are lost.
I have extracted a short webm video to reproduce the issue: https://bugs.freedesktop.org/attachment.cgi?id=145033
The file can be replayed with the following GStreamer pipeline:
`gst-launch-1.0 filesrc location=vp8_recording.webm ! matroskademux ! video/x-vp8 ! vaapivp8dec ! queue ! videoconvert ! xvimagesink`
GPU hang occurs after 33 seconds when the video gets corrupted...
Even simpler pipeline can be used (without visual feedback):
`gst-launch-1.0 filesrc location=/home/proex/vp8_recording.webm ! matroskademux ! video/x-vp8 ! vaapivp8dec ! fakesink`
In this case the GPU hangs in less than 5 seconds.
This issue was originally reported against Intel/DRM
https://bugs.freedesktop.org/show_bug.cgi?id=111312
So more info / logs can be found in this location
I have been able to reproduce the issue with the following configuration:
Platform: x86_64
Kernel: 3.10.0-693.2.2.el7.x86_64
Linux distribution: CentOS 7.4 http://archive.kernel.org/centos-vault/7.4.1708/isos/x86_64/CentOS-7-x86_64-DVD-1708.iso
Machine: NUC7i5BNK
Display connector: thunderbolt
GStreamer version: 1.16.0
libva: 2.3.0
libva-intel-driver: 2.3.0
xf86-video-intel: commit 6f4972d5c368c30e971a23c1dc370d3e43761282
And also we were able to reproduce on Intel(R) Core(TM) i7-7500U
Software stack is:
linux 5.1.9
libdrm 2.4.98
mesa 19.0.6
libva 2.4.1
libva-intel-driver 2.3.0
Can you please provide some directions on how to diagnose this issue?
Contributor guide
Assessment
This issue has not been assessed yet.