Bug 43841 - cairo git rendering corruption
cairo git rendering corruption
Status: RESOLVED DUPLICATE of bug 47266
Product: cairo
Classification: Unclassified
Component: general
1.10.3
x86-64 (AMD64) Linux (All)
: medium normal
Assigned To: Carl Worth
cairo-bugs mailing list
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2011-12-14 14:13 UTC by Michal Suchanek
Modified: 2012-03-28 06:16 UTC (History)
1 user (show)

See Also:


Attachments
corrupted text. Note that some shows the wrong text completely (12.98 KB, image/png)
2011-12-14 14:13 UTC, Michal Suchanek
Details
dmesg (63.34 KB, text/plain)
2011-12-14 16:17 UTC, Michal Suchanek
Details
log from Ubuntu 'stable' X server - issue remains the same (67.90 KB, text/plain)
2011-12-14 16:22 UTC, Michal Suchanek
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michal Suchanek 2011-12-14 14:13:03 UTC
Created attachment 54441 [details]
corrupted text. Note that some shows the wrong text completely

I experience wholesale corruption on 00:01.0 VGA compatible controller [0300]: ATI Technologies Inc Device [1002:9806]

Linux (Ubuntu) 3.2.0-4-generic

xserver-xorg-core                 2:1.11.2.902+git20111209+server-1
xserver-xorg-video-radeon         1:6.14.99+git20111212.aacbd629-[   12.711129] 

[drm] initializing kernel modesetting (PALM 0x1002:0x9806 0x1043:0x84E7).
[   12.711246] [drm] register mmio base: 0xFEB00000
[   12.711249] [drm] register mmio size: 262144
[   12.711412] ATOM BIOS: Ontario


The attached screenshot shows typical issue - wholesale corruption in GMail.
Amusingly, taking a screenshot does not make the thing go away, it just changes which text is corrupted.

On Redwood I get occasionally minor corruption in Firefox.

On r300 x1600-ish I get similar effects since I disabled vline waits, occasionally.

Not sure this is related (either to the vline waits or the r600 issue). The corruption on r300 happens sometimes in Evince or gkrellm (or maybe Firefox), not in terminals. I did not try re-enabling the vline waits or downgrading X because it's hard to tell if the issue is present or not.
Comment 1 Michal Suchanek 2011-12-14 14:21:40 UTC
The corruption in Firefox is really odd. Some pages (usually somewhat complex) , others not (or not so often). 

It's often possible to see the page rendered (mostly) correctly for a moment and it only corrupts afterwards, eg. on scrolling.

Using firefox 3.6, evince 3.
Comment 2 Alex Deucher 2011-12-14 14:23:54 UTC
please attach your xorg log and dmesg output.
Comment 3 Michal Suchanek 2011-12-14 16:17:31 UTC
Created attachment 54442 [details]
dmesg
Comment 4 Michal Suchanek 2011-12-14 16:22:35 UTC
Created attachment 54443 [details]
log from Ubuntu 'stable' X server - issue remains the same
Comment 5 Michel Dänzer 2011-12-15 09:02:22 UTC
Is this a regression? E.g. does it also happen with 6.14.2 or some even older snapshot? If not, can you bisect?
Comment 6 Michal Suchanek 2011-12-15 15:07:36 UTC
This is hard to tell.

On the e-450 the corruption is present with the earliest driver I could get working.

On redwood the corruption happens only rarely but as far as I remember ever since I got the card which is again since it got supported.

With the r300 card the corruption only happens recently which besides some upgrades coincides with turning off vline waits which might put more load on the card or cause races that would not happen otherwise. It is not reproducible reliably, however, so not something bisectable.

I tried experimenting on the e-450 which shows most corruption and found that running firefox causes the corruption (in firefox and elsewhere in gtk). When firefox is closed corruption ceases immediately on next redraw. gtk seems to redraw every element on mouseover so wiggling the mouse pointer over a treeview or a pulldown menu causes a lot of drawing I would guess. The corruption is visually very similar to what I see on the r300 so I guess it's something caused by the driver and the way gtk is drawing, not the hardware. There are pieces of text which are skewed, show garbage or different text in the text color, show a blob in text color approximately the size of the text or less often complete garbage and pieces of different textures. The corruption lasts until redraw. Another way to get the corruption is to configure a lot of applets in avant window navigator.

I tried to boot an openSUSE GNOME live CD on an e-350 and it was free of corruption initially. However, opening cover links from addons.mozilla.org, wikipedia.org and wikinews (over 100 tabs total) gives reliable temporary corruption in gtk menus (that is the menu is shown corrupted and redrawn immediately). It seems openSUSE uses some different GTK build because the menus are typically corrupted whole, not per item as on Debian/Ubuntu.
Comment 7 Michel Dänzer 2011-12-16 02:01:00 UTC
(In reply to comment #6)
> With the r300 card the corruption only happens recently which besides some
> upgrades coincides with turning off vline waits which might put more load on
> the card or cause races that would not happen otherwise.

I think it's more likely related to 'some upgrades'.


> [...] reliable temporary corruption in gtk menus (that is the menu is shown
> corrupted and redrawn immediately).

That sounds like a well-known regression in the xserver Composite layer, which has been fixed upstream. You have to be careful not to mix up different issues.
Comment 8 Michal Suchanek 2011-12-16 06:58:14 UTC
It's hard to tell if the problem is the same or different.

Still I can easily reproduce the corruption on a Fedore 16 live CD running on e-350 system.

I install avant-window-navigator, kill gconfd-2 to allow avant to start, and run it.

In avant preferences I set smallest icon size, find the system monitor plugin (near the top of plugin lists), and add system monitors until the panel expands across whole bottom of the screen. Clicking a system monitor applet now shows a corrupted window with process information.
Comment 9 Michal Suchanek 2011-12-16 10:15:11 UTC
hmm, the issue with awn on Fedora is wrong transparency.

Although it looks like corruption it is deterministic and happens always with the awn version in Fedora.
Comment 10 Michal Suchanek 2011-12-16 12:12:03 UTC
This is clearly a cairo issue.

Downgrading cairo I no longer get corruption in awn but get the wrong transparency instead.
Comment 11 Michal Suchanek 2011-12-16 12:17:42 UTC
broken 1.11.3+git20111211.8025fcc4-0ubuntu0ricotz~oneiric0 
broken differently 1.10.2-6ubuntu3
Comment 12 Uli Schlachter 2011-12-16 14:21:44 UTC
Could you test if this was introduced in cairo commit af9fbd176b? (That's what git bisect points at in bug 43764)
Comment 13 Chris Wilson 2011-12-16 15:52:48 UTC
The right question is whether you observe the same corruption with the vesa driver, or on nvidia, or etc...
Comment 14 Michal Suchanek 2011-12-17 06:28:39 UTC
It did not happen with shadowfb when I downgraded to radeon version that no longer supported the hardware so I guess it's that bug.
Comment 15 Alex Deucher 2012-03-28 06:16:10 UTC

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