Bug 38022 - ATI Radeon 6950 (Cayman): r600g texture / pixmap corruption
Summary: ATI Radeon 6950 (Cayman): r600g texture / pixmap corruption
Status: RESOLVED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Radeon (show other bugs)
Version: XOrg git
Hardware: x86-64 (AMD64) Linux (All)
: medium major
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-06-06 23:19 UTC by Harald Judt
Modified: 2012-01-21 08:44 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Xorg.0.log (58.31 KB, text/plain)
2011-06-06 23:19 UTC, Harald Judt
no flags Details
Screenshot of a corrupted icon. (2.10 KB, image/png)
2011-06-06 23:21 UTC, Harald Judt
no flags Details
Screenshot of corrupted xfce panel plugins. (2.99 KB, image/png)
2011-06-06 23:26 UTC, Harald Judt
no flags Details
Screenshot of corrupted firefox toolbar (24.27 KB, image/png)
2011-06-06 23:36 UTC, Harald Judt
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Harald Judt 2011-06-06 23:19:04 UTC
Created attachment 47642 [details]
Xorg.0.log

I don't know where this should go (drm, mesa?), but after a while, I notice corruption of textures / pixmaps. It can be reproduced quite easily by opening a few applications, or starting another X session. In particular, I could determine the following:
 - Corrupted areas resemble parts of the previous visible login screen
 - Icons, fonts and widgets like vertical gtk progressbars get corrupted, but only their lower half
 - Window (emerald) decoration seem to get corrupted completely.
 - It's not related to color tiling.
 - Pageflipping is enabled.
 - Restarting a corrupted application fixes it temporarily, while minimizing etc. doesn't. Restarting compiz doesn't fix it either.

I believe this is specific to cayman, as the issue does not occur on a thinkpad t400 with ATI Mobility Radeon HD 3400 and similar configuration.

Software configuration:
 - linux-3.0.0-rc1 with latest fixes from drm-2.6 git applied, up to 2a9e5862a38f7195931bd51788dc9ce68b28120c.
 - r600g from git mesa compiled on 12:44:56 03.06.2011
 - xorg-server 1.10.2
 - libdrm git 21:06:43 02.06.2011
 - xf86-video-ati git 21:56:58 02.06.2011

lspci:
01:00.0 VGA compatible controller: ATI Technologies Inc Device 6719 (prog-if 00 [VGA controller])
        Subsystem: ATI Technologies Inc Device 0b00
        Flags: bus master, fast devsel, latency 0, IRQ 54
        Memory at c0000000 (64-bit, prefetchable) [size=256M]
        Memory at fe620000 (64-bit, non-prefetchable) [size=128K]
        I/O ports at e000 [size=256]
        Expansion ROM at fe600000 [disabled] [size=128K]
        Capabilities: [50] Power Management version 3
        Capabilities: [58] Express Legacy Endpoint, MSI 00
        Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
        Capabilities: [150] Advanced Error Reporting
        Kernel driver in use: radeon
--

Apart from this, it works great, no crashes so far!
Comment 1 Harald Judt 2011-06-06 23:21:19 UTC
Created attachment 47643 [details]
Screenshot of a corrupted icon.

As you can see, only the lower half of the icon is corrupted.
Comment 2 Harald Judt 2011-06-06 23:26:48 UTC
Created attachment 47644 [details]
Screenshot of corrupted xfce panel plugins.

Here, parts of a previous screen (gdm login screen) shine through the lower half of the plugin widgets (gtk progress bar). I guess the gdm login screen was not active on any console at this time, so these are just remnants.

Reloading the panel fixes it.
Comment 3 Harald Judt 2011-06-06 23:36:06 UTC
Created attachment 47645 [details]
Screenshot of corrupted firefox toolbar

Corruption can get quite nasty after a while. The ugly pink background once was a somewhat nicer image from some firefox persona theme. There are more of those corrupted icons too for those who got a taste of them ;-)
Comment 4 Dave Airlie 2011-06-07 00:55:02 UTC
can you try with drm-radeon-fixes branch of my git trre?

http://git.kernel.org/?p=linux/kernel/git/airlied/drm-2.6.git;a=shortlog;h=refs/heads/drm-radeon-fixes

t enables cayman blitting support.
Comment 5 Harald Judt 2011-06-07 01:16:07 UTC
> - linux-3.0.0-rc1 with latest fixes from drm-2.6 git applied, up to
2a9e5862a38f7195931bd51788dc9ce68b28120c.

Small inexactness on my part. I pulled from drm-radeon-testing branch, not master, which should already have the blitting support. I do not have all commits from the last 5 days though, the last one was "fix oops in ttm reserve when pageflipping (v2)".

I might give 3.0.0-rc2 a try together with drm-radeon-fixes, but after glancing over the changelog I wonder if this is really going to help...
Comment 6 Dave Airlie 2011-06-07 01:43:33 UTC
can you disable page flipping and try again?

/me hasn't run compiz on cayman yet too much.
Comment 7 Harald Judt 2011-06-08 14:38:32 UTC
> can you disable page flipping and try again?

It did not help, though it delayed the problems.

However, I've upgraded to 3.0-rc2 and this solved all my problems. I'm not sure about this, but I think the problem was me pulling from drm-radeon-testing instead of only cherry-picking the latest commits. If this is really the case, I apologize for wasting your time.

> /me hasn't run compiz on cayman yet too much.

It works really great! Thanks for providing a better experience with the open-source drivers.
Comment 8 Harald Judt 2011-06-08 23:44:05 UTC
Unfortunately, I have to reopen this bug, as the corruption returned as soon as I tried to start a 3d game (naev: http://code.google.com/p/naev/).

- some fonts in the menu were corrupted and unreadable
- exiting back to the desktop shows the same corruption mentioned before (window decorations, icons)

However, it's a bit better now, as it did not happen during normal desktop usage (till now).
Comment 9 Harald Judt 2011-06-09 10:13:49 UTC
> However, it's a bit better now, as it did not happen during normal
> desktop usage (till now).

I spoke too soon. Problem is still there :-(
Comment 10 Harald Judt 2011-06-09 10:36:13 UTC
Bug 27523 seems similar, but not identical to this one.
https://bugs.freedesktop.org/show_bug.cgi?id=27523
Comment 11 Adam Rak 2011-08-20 08:14:11 UTC
I have similar experience on HD6990, usually I have horrible pixmap corruptions with random memory content. PM also doesn't work, and I have turned it off.
Nexuiz works fine, but after using okular things go quite bad.
Comment 12 Harald Judt 2011-10-10 11:01:12 UTC
I thought it was time for an update, but unfortunately this is still not fixed in 3.1-rc9. Isn't there anything that can be done about this? All in all, the driver works mostly fine, but the corruptions are very annoying and disturbing.
Comment 13 auxsvr 2011-10-16 11:29:41 UTC
I've been having progressing icon, font and widget corruption in KDE4 and firefox for a over year already. It is easy to trigger this if I scroll quickly through a PDF file in okular; heavy texture use or memory shortage trigger it reliably too. The symptoms are essentially the same as Harald described, although on a radeon 9600xt, opensuse 11.4, linux 3.1-rc5, Mesa 7.11.
Comment 14 Michel Dänzer 2011-10-17 08:41:37 UTC
(In reply to comment #13)
> The symptoms are essentially the same as Harald described, although on a radeon
> 9600xt, [...]

That's probably a different issue from this one (which really seems Cayman specific) then. If you can still reproduce the problem with radeon.agpmode=-1, please file your own bug if there isn't one for your card (generation) yet.
Comment 15 Julien Bigot 2011-10-18 02:19:28 UTC
I have the same symptoms here. 

Hardware is a radeon 6950 (Cayman) too. (the truth is I have 2 plugged but only use 1 at the moment)

01:00.0 VGA compatible controller: ATI Technologies Inc Cayman PRO [AMD Radeon 6900 Series] (prog-if 00 [VGA controller])
        Subsystem: PC Partner Limited Device 186b
        Flags: bus master, fast devsel, latency 0, IRQ 61
        Memory at c0000000 (64-bit, prefetchable) [size=256M]
        Memory at fbd20000 (64-bit, non-prefetchable) [size=128K]
        I/O ports at e000 [size=256]
        Expansion ROM at fbd00000 [disabled] [size=128K]
        Capabilities: [50] Power Management version 3
        Capabilities: [58] Express Legacy Endpoint, MSI 00
        Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
        Capabilities: [150] Advanced Error Reporting
        Kernel driver in use: radeon

Software is an up to date debian unstable (sid)

libdrm-radeon1: 2.4.26-1
libdrm2: 2.4.26-1
libgl1-mesa-dri: 7.11-6
linux-image-3.0.0-2-amd64: 3.0.0-5
xserver-xorg: 1:7.6+9
xserver-xorg-core: 2:1.11.1.901-1
xserver-xorg-video-radeon: 1:6.14.2-2

Please let me know if there is any additional information I can provide or any test I can do.

Regards,
Julien
Comment 16 Harald Judt 2011-11-11 13:50:57 UTC
This has been fixed with attachment 52762 [details] [review] from bug 40221.
It does not occur anymore in kernel-3.2-rc1.

I'm therefore happily closing this bug.

Thanks.
Comment 17 Florian Mickler 2012-01-21 08:44:59 UTC
A patch referencing this bug report has been merged in Linux v3.2-rc1:

commit 77b1bad423599c9841ea282a82172f039bb2ff92
Author: Jerome Glisse <jglisse@redhat.com>
Date:   Wed Oct 26 11:41:22 2011 -0400

    drm/radeon: flush read cache for gtt with fence on r6xx and newer GPU V3


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.