Bug 98280

Summary: RX480 GPU lockup with vaapi encoding
Product: DRI Reporter: Christoph Haag <haagch>
Component: DRM/AMDgpuAssignee: Default DRI bug account <dri-devel>
Status: CLOSED INVALID QA Contact:
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
dmesg 4.9-rc1 none

Description Christoph Haag 2016-10-16 17:01:54 UTC
Created attachment 127333 [details]
dmesg 4.9-rc1

Happens with 4.8 and 4.9-rc1. I haven't tried 4.7.

This pipeline hangs the GPU very quickly:

gst-launch-1.0 ximagesrc display-name=:0 use-damage=0 startx=0 starty=0 endx=1919 endy=1079 ! videoconvert ! video/x-raw,framerate=60/1,format=NV12 ! vaapih264enc ! h264parse ! matroskamux ! filesink location=output.avi

attached dmesg is from 4.9-rc1.

As far as I can see, it also produces one frame corrupted output with the image being duplicated vertically and then squashed to fit into 1920x1080, see bug 98278.

Probably not related to bug 97240, but maybe?
Comment 1 Christoph Haag 2016-10-16 23:56:04 UTC
I'll mark this as invalid although it might still be worth to investigate.

I took some suggestions from bug 98278 for my recording script and this is the pipeline I end up with:

gst-launch-1.0 -e ximagesrc display-name=:0 use-damage=0 startx=0 starty=0 endx=1919 endy=1079 ! multiqueue ! video/x-raw,format=BGRx,framerate=60/1 ! videoconvert ! video/x-raw,format=NV12,framerate=60/1 ! multiqueue ! vaapih264enc rate-control=cqp bitrate=5000 ! video/x-h264,profile=baseline ! h264parse ! multiqueue ! matroskamux name=muxer. ! progressreport name=Rec_time ! filesink location=output.mkv

This records very nicely and looks like it does NOT cause GPU hangs.
Comment 2 Christian König 2016-10-17 12:04:53 UTC
We have fixed quite a bunch of issue with VA-API as well as the kernel recently. Could be that this is fixed by now.

Anyway let's close this bug for now.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.