Bug 85526

Summary: Screen corruptions in OpenGL reliant applications
Product: Mesa Reporter: Hamish Wilson <hamish>
Component: Drivers/Gallium/r600Assignee: Default DRI bug account <dri-devel>
Status: RESOLVED DUPLICATE QA Contact:
Severity: major    
Priority: medium    
Version: unspecified   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: Image corruptions in Chromium, Blood II: The Chosen through WINE, and Quake III Arena
Xorg.0.log file for Hamish Wilson
dmesg output for Hamish Wilson

Description Hamish Wilson 2014-10-27 21:51:20 UTC
Created attachment 108536 [details]
Image corruptions in Chromium, Blood II: The Chosen through WINE, and Quake III Arena

I have been having a very confusing problem with the version of Mesa packaged with Arch Linux. I am using a Diamond Radeon HD 4670 with R600g.

Yesterday I updated the various Mesa packages from 10.3.1-1 to 10.3.2-1 and upon doing so I started to encounter screen corruptions in all of the games I tested as well as the browser Chromium.

Reverting to the previous version packaged by Arch Linux fixes the issue:
cd /var/cache/pacman/pkg/
pacman -U mesa-10.3.1-1-i686.pkg.tar.xz mesa-dri-10.3.1-1-i686.pkg.tar.xz mesa-libgl-10.3.1-1-i686.pkg.tar.xz mesa-vdpau-10.3.1-1-i686.pkg.tar.xz

While the bug itself is of course distressing, the main thing that is confusing me is that I am even having trouble finding mention of Mesa 10.3.2 release as the website does not mention it and I can not even find an entry for Mesa 10.3 in the Version field of this very submission form.

Games seem to run without any stated errors in spite of the corruptions, something which is making it difficult for me to find any additional information. I have attached screenshots showing off some of the problems I am talking about.

I apologize if this report is too vague or if I am missing something with regards to the Mesa version information, but this is the best I can figure out for the moment. Any suggestions as to deriving more useful information would of course be appreciated.
Comment 1 Hamish Wilson 2014-10-27 21:53:01 UTC
Seeing as attaching an image did not seem to work, the screenshots in question can also be seen here:
http://www.phoronix.com/forums/showthread.php?108068-Help-diagnosing-problems-with-a-Readon-HD-4670-on-Mesa-10-3-2-1&p=448863#post448863
Comment 2 Alex Deucher 2014-10-27 22:19:48 UTC
Can you bisect mesa to indentify the problematic commit between 10.3.1 and 10.3.2?  there are only a few changes between the two versions:
http://cgit.freedesktop.org/mesa/mesa/log/?h=10.3
Comment 3 Hamish Wilson 2014-10-28 01:25:54 UTC
(In reply to Alex Deucher from comment #2)
> Can you bisect mesa to indentify the problematic commit between 10.3.1 and
> 10.3.2?  there are only a few changes between the two versions:
> http://cgit.freedesktop.org/mesa/mesa/log/?h=10.3

[hamish@Griffindor mesa]$ git bisect good
Bisecting: 0 revisions left to test after this (roughly 1 step)
[85d7eb730a1cbfbd4c9b2ecd017f6b8dab40b20d] i965: Add a BRW_MOCS_PTE #define.
[hamish@Griffindor mesa]$
Comment 4 Hamish Wilson 2014-10-28 01:30:23 UTC
[hamish@Griffindor mesa]$ git bisect bad
Bisecting: 0 revisions left to test after this (roughly 0 steps)
[64c2bdc334ba472603b1e7cd2c3046cfbce285b6] r600g,radeonsi: Always use GTT again for PIPE_USAGE_STREAM buffers
[hamish@Griffindor mesa]$
Comment 5 Hamish Wilson 2014-10-28 01:32:03 UTC
So it looks like "r600g,radeonsi: Always use GTT again" is the culprit. Sorry for doing it is as two posts; this my first time bisecting and I did not realize at first I needed to do one more step.
Comment 6 Hamish Wilson 2014-10-28 01:37:37 UTC
[hamish@Griffindor mesa]$ git bisect bad
64c2bdc334ba472603b1e7cd2c3046cfbce285b6 is the first bad commit
commit 64c2bdc334ba472603b1e7cd2c3046cfbce285b6
Author: Michel Dänzer <michel.daenzer@amd.com>
Date:   Tue Aug 26 18:21:50 2014 +0900

    r600g,radeonsi: Always use GTT again for PIPE_USAGE_STREAM buffers
    
    Putting those in VRAM can cause long pauses due to buffers being moved
    into / out of VRAM.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=84662
    Cc: mesa-stable@lists.freedesktop.org
    Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
    (cherry picked from commit 7b4276d7acf2e0f77044cb50caa6ad936fa78786)

:040000 040000 3d09f050c7cf6907d82aebab6bd1d4f719729712 290288e425b6751de0c5f8e02f9d50f566a8d2f3 M	src
[hamish@Griffindor mesa]$
Comment 7 Aaron B 2014-10-28 01:44:01 UTC
I don't have bad rendering during normal renders like you guys, but when mousing over the bookmarks bar in chromium the overlayed boxes are usually corrupt for me now. R9 270X.
Comment 8 Emil Velikov 2014-10-28 02:26:36 UTC
(In reply to Hamish Wilson from comment #0)
> While the bug itself is of course distressing, the main thing that is
> confusing me is that I am even having trouble finding mention of Mesa 10.3.2
> release as the website does not mention it and I can not even find an entry
> for Mesa 10.3 in the Version field of this very submission form.
> 
Sometime the website takes a bit of time to update as I don't the have access to it atm. Similar story for bugzilla. I'll take a look into getting those resolved.

Announcements can bee seen in the mesa-announce ML archive [1], which includes mesa 10.3.2. If you're interest in testing mesa just before it's released, keep an eye open for "New stable branch X candidate" style messages on the mesa-stable ML [2]

Pardon for the off topic gents.

-Emil

[1] http://lists.freedesktop.org/archives/mesa-announce/
[2] http://lists.freedesktop.org/archives/mesa-stable/
Comment 9 Michel Dänzer 2014-10-28 02:38:20 UTC
Does running the affected apps with the environment variable RADEON_THREAD=0 work around the problem?


(In reply to Aaron B from comment #7)
> I don't have bad rendering during normal renders like you guys, but when
> mousing over the bookmarks bar in chromium the overlayed boxes are usually
> corrupt for me now. R9 270X.

And that's caused by the same Git commit? I.e. if you revert that commit, the problem goes away?
Comment 10 Hamish Wilson 2014-10-28 02:49:38 UTC
(In reply to Michel Dänzer from comment #9)
> Does running the affected apps with the environment variable RADEON_THREAD=0
> work around the problem?

Running "RADEON_THREAD=0 quake3" from the terminal still produces image corruptions for me with 10.3.2.
Comment 11 John 2014-10-28 02:54:45 UTC
(In reply to Aaron B from comment #7)
> I don't have bad rendering during normal renders like you guys, but when
> mousing over the bookmarks bar in chromium the overlayed boxes are usually
> corrupt for me now. R9 270X.

I've had the same issue in chromium with a 280x. (well I haven't tried on bookmarks, but on any other overlay)
I found a way to get around it, just move the cursor away, and move it back on, then your overlay should be fine.
I *felt* that this issue came from chromium's new ui library, but truly I never tested it so maybe it came from gallium3d.
I'll subscribe to this and maybe I'll try building mesa without that commit later this week.
Comment 12 Michel Dänzer 2014-10-28 03:04:08 UTC
Hamish, please attach the /var/log/Xorg.0.log file and the output of dmesg.
Comment 13 Michel Dänzer 2014-10-28 03:07:07 UTC
This may be the same or at least related to bug 84627, which seems caused by something subtle in the kernel.
Comment 14 Hamish Wilson 2014-10-28 03:17:12 UTC
Created attachment 108547 [details]
Xorg.0.log file for Hamish Wilson
Comment 15 Hamish Wilson 2014-10-28 03:19:17 UTC
Created attachment 108548 [details]
dmesg output for Hamish Wilson
Comment 16 Michel Dänzer 2014-10-28 03:27:36 UTC
Can you try a 64-bit kernel? Does it happen with that as well?
Comment 17 Hamish Wilson 2014-10-28 23:28:32 UTC
(In reply to Michel Dänzer from comment #16)
> Can you try a 64-bit kernel? Does it happen with that as well?

Booting into the exact same kernel for 64-bit does indeed make the problems go away for me. Gentleman, I think we have a suspect...
Comment 18 Michel Dänzer 2014-10-29 02:08:59 UTC

*** This bug has been marked as a duplicate of bug 84627 ***

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.