Bug 62889 - ColorTiling results in glitches on Radeon HD 7970 + Glamor
Summary: ColorTiling results in glitches on Radeon HD 7970 + Glamor
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Gallium/radeonsi (show other bugs)
Version: git
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-03-29 03:51 UTC by Alexander von Gluck
Modified: 2013-05-28 09:28 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
xorglog wcolortile stable software version (47.45 KB, text/plain)
2013-03-29 03:53 UTC, Alexander von Gluck
Details
xorgconf wcolortile stable software version (361 bytes, text/plain)
2013-03-29 03:53 UTC, Alexander von Gluck
Details
dmesg wcolortile stable software version (83.58 KB, text/plain)
2013-03-29 03:54 UTC, Alexander von Gluck
Details
Example of corruption (36.19 KB, image/jpeg)
2013-03-29 03:56 UTC, Alexander von Gluck
Details
software packages (1.50 KB, text/plain)
2013-04-01 16:02 UTC, Alexander von Gluck
Details
glxinfo-nocolortile (25.02 KB, text/plain)
2013-04-02 18:41 UTC, Alexander von Gluck
Details
gnome-session --debug output nocolortile (1.11 KB, text/plain)
2013-04-02 18:41 UTC, Alexander von Gluck
Details
possible fix (2.63 KB, patch)
2013-04-08 16:45 UTC, Alex Deucher
Details | Splinter Review
screenshot of steam showing ColorTiling corruption (1.60 MB, image/png)
2013-04-26 19:29 UTC, Alexander von Gluck
Details

Description Alexander von Gluck 2013-03-29 03:51:53 UTC
Versions tried
Stable:
LLVM 3.2  + Mesa 9.1.1 + kernel 3.8.4

Mainline
LLVM 3.3-devel + mesa 9.2-devel + kernel 3.8.4


Gnome Desktop.


Attempting to use Glamor on the Radeon HD 7970 results in odd screen artifacts.  Cursor is not effected however.

worked with agd5f in irc without any luck
Comment 1 Alexander von Gluck 2013-03-29 03:53:23 UTC
Created attachment 77180 [details]
xorglog  wcolortile  stable software version
Comment 2 Alexander von Gluck 2013-03-29 03:53:43 UTC
Created attachment 77181 [details]
xorgconf  wcolortile  stable software version
Comment 3 Alexander von Gluck 2013-03-29 03:54:26 UTC
Created attachment 77182 [details]
dmesg  wcolortile  stable software version
Comment 4 Alexander von Gluck 2013-03-29 03:56:13 UTC
Created attachment 77183 [details]
Example of corruption
Comment 5 Alexander von Gluck 2013-03-29 03:58:07 UTC
If I disable ColorTiling, Gnome doesn't load completely only showing the desktop wallpaper Errors about unable to find displaybuffer (or something like that... not sure of exact error)

While the display is corrupt.. I *can* tell that acceleration is working due to the speed of the GUI compared to llvmpipe.
Comment 6 Alexander von Gluck 2013-04-01 16:02:27 UTC
Created attachment 77279 [details]
software packages

attaching related software package versions.  A version number means a stable upstream version, a date stamp means that it was a build of the latest git code from that date.
Comment 7 Michel Dänzer 2013-04-02 07:55:37 UTC
This is why ColorTiling is still disabled by default for your card... just leave it at that? :)

(In reply to comment #5)
> If I disable ColorTiling, Gnome doesn't load completely only showing the
> desktop wallpaper Errors about unable to find displaybuffer (or something
> like that... not sure of exact error)

Sounds like a separate issue. FWIW, 'unable to find displaybuffer' sounds like something I've seen myself, though AFAIR without ill effect.
Comment 8 Alexander von Gluck 2013-04-02 18:40:17 UTC
Thanks for the input.

I disabled colortiling and installed xfce.. success!

It seems like Gnome 3.6 won't work unless color tiling is enabled. I double checked the gnome session logs and don't see the previously mentioned error anymore.. just a blank desktop wallpaper across both monitors.  I erased the gnome config files in .local without any success.

I ran a glxinfo from .xinit, and it does confirm that Gallium is in use. (attached)
Comment 9 Alexander von Gluck 2013-04-02 18:41:07 UTC
Created attachment 77335 [details]
glxinfo-nocolortile
Comment 10 Alexander von Gluck 2013-04-02 18:41:42 UTC
Created attachment 77336 [details]
gnome-session --debug output nocolortile
Comment 11 Michel Dänzer 2013-04-03 10:09:57 UTC
(In reply to comment #8)
> It seems like Gnome 3.6 won't work unless color tiling is enabled. I double
> checked the gnome session logs and don't see the previously mentioned error
> anymore.. just a blank desktop wallpaper across both monitors.

Weird. GNOME 3.6 was and 3.8 still is working fine for me with ColorTiling disabled (on a 7770), and I'm not sure how this could be directly related. Is there anything in dmesg about GPU lockups, or is gnome-shell getting stuck somehwere, or something like that?
Comment 12 Alexander von Gluck 2013-04-03 15:14:50 UTC
The only dmesg errors are these:

[309092.861665] [drm:radeon_cs_ioctl] *ERROR* Failed to parse relocation -12!
[309099.062192] radeon 0000:01:00.0: bo ffff8803fc4cb400 don't has a mapping in vm ffff8803f406b580
[309099.063303] radeon 0000:01:00.0: bo ffff8803fc4cf400 don't has a mapping in vm ffff8803f406b580
[309099.064403] radeon 0000:01:00.0: bo ffff8803fc4c9800 don't has a mapping in vm ffff8803f406b580
[309099.065457] radeon 0000:01:00.0: bo ffff8803fc4cc800 don't has a mapping in vm ffff8803f406b580
[309099.066560] radeon 0000:01:00.0: bo ffff8803fc4cb800 don't has a mapping in vm ffff8803f406b580
[309099.067664] radeon 0000:01:00.0: bo ffff8803fc4c9c00 don't has a mapping in vm ffff8803f406b580


agd5f mentioned that those are normal though. (well, not *normal* but can be ignored)
Comment 13 Michel Dänzer 2013-04-03 16:32:45 UTC
(In reply to comment #12)
> [309092.861665] [drm:radeon_cs_ioctl] *ERROR* Failed to parse relocation -12!

This means some rendering was dropped on the floor because the kernel ran out of memory. Not sure that can explain it though, unless this keeps repeating it should continue rendering again.
Comment 14 Alexander von Gluck 2013-04-04 16:17:19 UTC
lol.

http://www.phoronix.com/scan.php?page=news_item&px=MTM0Mjk

It looks like Jerome Glisse is adding it :)
Comment 15 Alex Deucher 2013-04-08 16:45:55 UTC
Created attachment 77614 [details] [review]
possible fix

Does this kernel patch fix the issue?
Comment 16 Alexander von Gluck 2013-04-15 17:20:52 UTC
I can give it a try, however it may be a few days. I ended up pulling the 7970 and putting it in a box (the cardboard kind) under my desk and replacing it with a 5870 which kind of works minus GPU CP stalls (which i'm opening another bug on :D)
Comment 17 Alexander von Gluck 2013-04-26 19:27:43 UTC
I re-updated my Mesa, llvm-amdgpu, libdrm, to mainline and applied the patch to kernel 3.9.0rc3


Now things seem to be in a better state.  The patch doesn't seem to provide any change though as I can boot the older 3.8.x kernel and see the same results.

It looks like something changed in Mesa or libdrm for the better.

Oddly enough, after the updates while Gnome 3 loads ok with color tiling, Steam now shows the corruption Gnome once showed.. (see new screenshot attached)

Sorry i'm kind of all over the place with the testing, I had to update Mesa to get X working again.
Comment 18 Alexander von Gluck 2013-04-26 19:29:03 UTC
Created attachment 78533 [details]
screenshot of steam showing ColorTiling corruption

current xorg:

#Section "Module"
#       Load "dri2"
#       Load "glamoregl"
#EndSection

Section "Device"
   Identifier "7970"
#   Driver "modesetting"
#    Driver   "ati"
   Driver   "radeon"
#   Driver   "radeonsi"

#   Option   "SWcursor"         "on"
#   Option   "EnablePageFlip"   "on"
   Option   "AccelMethod"      "glamor"
#   Option   "AccelMethod"      "exa"
   Option   "RenderAccel"      "on"
#   Option "SwapbuffersWait" "false"
   Option   "ColorTiling"      "on"
#   Option   "AccelDFS"         "off"
EndSection
Comment 19 Alexander von Gluck 2013-04-26 19:32:24 UTC
I can confirm that after disabling ColorTiling that Steam loads properly.

So it looks like:

 1) The ColorTiling bug moved from Gnome 3 back to Steam after updating Mesa / libdrm
 2) The Patch makes no real difference.
 3) Disabling ColoringTiling makes Steam function.

So it looks like things are finally working at this point.

Going to play some random Steam games to see if there is any corruption or CP stalls as with the HD 5870
Comment 20 Michel Dänzer 2013-04-29 07:56:44 UTC
Are the 32-bit drivers used by Steam up to date?
Comment 21 Alexander von Gluck 2013-05-05 15:31:39 UTC
Yup. Did the same process for the 32-bit drivers. Same result.

I went ahead and ripped mesa out for Catalyst... which is kind of working. Let me know if you guys have any more big ideas :)
Comment 22 Michel Dänzer 2013-05-07 16:24:18 UTC
(In reply to comment #21)
> Yup. Did the same process for the 32-bit drivers. Same result.

Works For Me™... Did you verify with LIBGL_DEBUG=verbose that it's picking up the right radeonsi_dri.so?
Comment 23 Michel Dänzer 2013-05-28 09:28:45 UTC
With no answer to comment #22, I assume the Steam issue was due to picking up stale 32-bit binaries.


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.