Bug 93862 - [Bisected] "drm/amdgpu: fix amdgpu_bo_pin_restricted VRAM placing v2" is bad
Summary: [Bisected] "drm/amdgpu: fix amdgpu_bo_pin_restricted VRAM placing v2" is bad
Status: RESOLVED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/AMDgpu (show other bugs)
Version: DRI git
Hardware: Other All
: medium normal
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-01-25 20:41 UTC by Ernst Sjöstrand
Modified: 2016-01-29 08:45 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Xorg.0.log (56.03 KB, text/plain)
2016-01-26 03:51 UTC, Ernst Sjöstrand
no flags Details
glxinfo (98.22 KB, text/plain)
2016-01-26 04:00 UTC, Ernst Sjöstrand
no flags Details
dmesg (203.13 KB, text/plain)
2016-01-26 04:02 UTC, Ernst Sjöstrand
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ernst Sjöstrand 2016-01-25 20:41:38 UTC
Updating to the latest drm-next-4.6-wip I could no longer log in to Gnome through GDM, I just got a black screen after entering my passwd. startx + gnome-session worked though.

However if I ran Unigine Heaven with Tessellation there, I saw I got the frames in the wrong order sometimes. This doesn't happen otherwise.

Bisecting was easy and pointed to:
78d0e182b6c1f5336f6e8cbb197f403276dabc7f
drm/amdgpu: fix amdgpu_bo_pin_restricted VRAM placing v2

Reverting that commit on top of drm-next-4.6-wip also solved the problem.
Comment 1 Michel Dänzer 2016-01-26 01:37:05 UTC
(In reply to Ernst Sjöstrand from comment #0)
> Updating to the latest drm-next-4.6-wip I could no longer log in to Gnome
> through GDM, I just got a black screen after entering my passwd. startx +
> gnome-session worked though.

Please attach the Xorg log and output of dmesg captured after getting the black screen.

Please also attach the output of glxinfo.
Comment 2 Ernst Sjöstrand 2016-01-26 03:51:13 UTC
Created attachment 121290 [details]
Xorg.0.log

Full of
[    40.002] (WW) AMDGPU(0): flip queue failed: Invalid argument
[    40.002] (WW) AMDGPU(0): Page flip failed: Invalid argument
[    40.002] (EE) AMDGPU(0): present flip failed
Comment 3 Ernst Sjöstrand 2016-01-26 04:00:18 UTC
Created attachment 121291 [details]
glxinfo

Glxinfo is identical before and after the revert.
Comment 4 Ernst Sjöstrand 2016-01-26 04:02:07 UTC
Created attachment 121292 [details]
dmesg

Full of:
[  240.780604] amdgpu 0000:01:00.0: ffff8800a8c31c00 pin failed
[  240.780630] [drm:amdgpu_crtc_page_flip [amdgpu]] *ERROR* failed to pin new rbo buffer before flip
[  240.859165] amdgpu 0000:01:00.0: ffff8800a8c31c00 pin failed
[  240.859186] [drm:amdgpu_crtc_page_flip [amdgpu]] *ERROR* failed to pin new rbo buffer before flip
Comment 5 Michel Dänzer 2016-01-26 07:43:12 UTC
The kernel change is correct, it merely exposed bugs in Mesa (https://patchwork.freedesktop.org/patch/71628/) and xf86-video-amdgpu (http://lists.x.org/archives/xorg-driver-ati/2016-January/028475.html).
Comment 6 Michel Dänzer 2016-01-28 01:35:49 UTC
Note that if you apply the Mesa fix, you also need to apply the xf86-video-amdgpu fix, or Xorg will fail to start up as you reported on IRC.
Comment 7 Ernst Sjöstrand 2016-01-29 08:33:59 UTC
Michael: thanks. Could hurt future bisects?
Could only get past it without the mesa changes but perhaps I messed something up. Lots of big changes right now!
Comment 8 Michel Dänzer 2016-01-29 08:45:21 UTC
Fixed in Mesa and xf86-video-amdgpu master. Both fixes are required.

Module: Mesa
Branch: master
Commit: 62f837e2ea7b854215efb2e110b176dad61c2af0
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=62f837e2ea7b854215efb2e110b176dad61c2af0

Author: Michel Dänzer <michel.daenzer@amd.com>
Date:   Tue Jan 26 16:15:59 2016 +0900

winsys/amdgpu: Handle RADEON_FLAG_NO_CPU_ACCESS


commit a3eac85d812ecc605436e6bd5b9ee7ebf307e3d3
Author: Michel Dänzer <michel.daenzer@amd.com>
Date:   Tue Jan 26 16:12:28 2016 +0900

    Only map front buffer if glamor acceleration is disabled (v2)


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.