Bug 22111

Summary: [i965] Text corruption in some applications after several hours on Dell 1420 (regression since 2.7.1)
Product: xorg Reporter: Bryce Harrington <bryce>
Component: Driver/intelAssignee: Carl Worth <cworth>
Status: RESOLVED DUPLICATE QA Contact: Xorg Project Team <xorg-team>
Severity: major    
Priority: high CC: johnlen7+freedesktop, michael.terry, nalimilan
Version: 7.4 (2008.09)Keywords: regression
Hardware: x86 (IA32)   
OS: Linux (All)   
i915 platform: i915 features:
Description Flags
CurrentDmesg.gz none

Description Bryce Harrington 2009-06-05 09:38:48 UTC
Created attachment 26463 [details]

Forwarding this bug from a Ubuntu reporter:

After the system has been up for a period of time, text in certain applications (firefox, gnome-screensaver) start showing corruption on particular letters. 

This appears only after the system has been up for several hours.  As time progresses, more letters become corrupt, until almost all text becomes corrupted.  Restarting the application does not help, nor does vtswitching.  Rebooting system restores things, but the corruption comes back again after a while.

The issue did not occur on -intel 2.7.1, and downgrading to that version seems to make the problem go away.

Michael is seeing this on a Dell 1420 when running the ec2fde7c snapshot from June 2nd.  Bryce also has a 1420, and sees the same behavior, but is running the 8e942b70 git snapshot from May 26th.

[Original Report]
After updating my Karmic machine to the new UXA-by-default Intel driver, I'm seeing some odd text corruption in places. I'm attaching a screenshot.

In the screenshot, the text is supposed to say "Here's a patch to add info codes for the various upload worker thread events. Useful for showing a different status message in Deja Dup when we're uploading."

Reloading the page doesn't make it go away. I've seen it on other web pages too, where some sections of text, but not all are corrupted. I've also seen it on the gnome-screensaver 'lock screen' login window. So I don't think it's Firefox-only. Some pango thing?

00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller [8086:2a02] (rev 0c)
	Subsystem: Dell Device [1028:01f3]

ProblemType: Bug
Architecture: i386
Date: Wed Jun 3 19:34:15 2009
DistroRelease: Ubuntu 9.10
MachineType: Dell Inc. Inspiron 1420
Package: xserver-xorg-video-intel 2:
ProcCmdLine: root=UUID=03105272-3f8b-4e3f-aeb4-611d88c12206 ro quiet splash
 PATH=(custom, user)
ProcVersionSignature: Ubuntu 2.6.30-7.8-generic
 xserver-xorg 1:7.4~5ubuntu20
 libgl1-mesa-glx 7.4.1-1ubuntu1
 libdrm2 2.4.11-0ubuntu1
 xserver-xorg-video-intel 2:
 xserver-xorg-video-ati 1:6.12.2-1ubuntu1
SourcePackage: xserver-xorg-video-intel
Uname: Linux 2.6.30-7-generic i686
dmi.bios.date: 05/23/2007
dmi.bios.vendor: Dell Inc.
dmi.bios.version: A00
dmi.board.name: 0DT492
dmi.board.vendor: Dell Inc.
dmi.chassis.type: 8
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.:bvrA00:bd05/23/2007:svnDellInc.:pnInspiron1420:pvr:rvnDellInc.:rn0DT492:rvr:cvnDellInc.:ct8:cvr:
dmi.product.name: Inspiron 1420
dmi.sys.vendor: Dell Inc.
fglrx: Not loaded
fglrx-loaded: Error: command ['grep', 'fglrx', '/var/log/kern.log', '/proc/modules'] failed with exit code 1:
 distro: Ubuntu
 architecture: i686kernel: 2.6.30-7-generic
Comment 1 Bryce Harrington 2009-06-05 09:39:29 UTC
Created attachment 26464 [details]
Comment 2 Bryce Harrington 2009-06-05 09:39:54 UTC
Created attachment 26465 [details]
Comment 3 Gordon Jin 2009-06-05 12:01:19 UTC
When you say "it works with 2.7.1", does it use EXA (default) or UXA?
Comment 4 Milan Bouchet-Valat 2009-06-05 13:37:18 UTC
*** Bug 22113 has been marked as a duplicate of this bug. ***
Comment 5 Evgeny Fr 2009-06-06 09:21:24 UTC
1. I see the same corruption with 2.6.30rc6 X.org GIT snapshot of 26 May 2009 on both 946GZ and i965.

2. I have only noticed such issues after power saving (e.g. display turning off on desktop, or suspend to RAM on laptop), with the bitmaps getting back to normal after X.org restart.

3. The corruption appears on other bitmaps as well, not only fonts.
Comment 6 Michael Terry 2009-06-08 05:57:43 UTC
My "works with 2.7.1" comment was with the default config.  So EXA.
Comment 7 Carl Worth 2009-06-08 15:26:59 UTC
Sorry for the bouncing bug reports, but this looks like a duplicate of bug #21790 (which you can see for more details). It was fixed with this commit to the kernel, which I believe first appeared in 2.6.30-rc8.


commit 07f4f3e8a24138ca2f3650723d670df25687cd05
Author: Kristian Høgsberg <krh@redhat.com>
Date:   Wed May 27 14:37:28 2009 -0400

    i915: Set object to gtt domain when faulting it back in
    When a GEM object is evicted from the GTT we set it to the CPU domain,
    as it might get swapped in and out or ever mmapped regularly.  If the
    object is mmapped through the GTT it can still get evicted in this way
    by other objects requiring GTT space.  When the GTT mapping is touched
    again we fault it back into the GTT, but fail to set it back to the
    GTT domain.  This means we fail to flush any cached CPU writes to the
    pages backing the object which will then happen "eventually", typically
    after we write to the page through the uncached GTT mapping.
    [anholt: Note that userland does do a set_domain(GTT, GTT) when starting
    to access the GTT mapping.  That covers getting the existing mapping of the
    object synchronized if it's bound to the GTT.  But set_domain(GTT, GTT)
    doesn't do anything if the object is currently unbound.  This fix covers the
    transition to being bound for GTT mapping.]
    Fixes glyph and other pixmap corruption during swapping.  fd.o bug #21790
    Signed-off-by: Kristian Høgsberg <krh@redhat.com>
    Signed-off-by: Eric Anholt <eric@anholt.net>

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

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.