Bug 22762 - [GM965] Graphics corruption in Karmic
Summary: [GM965] Graphics corruption in Karmic
Status: RESOLVED INVALID
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: 7.4 (2008.09)
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: Carl Worth
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-07-13 21:10 UTC by Bryce Harrington
Modified: 2012-10-21 14:30 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:


Attachments
corrupt2.png (622.12 KB, image/png)
2009-07-13 21:10 UTC, Bryce Harrington
no flags Details
corrupt.png (16.90 KB, image/png)
2009-07-13 21:11 UTC, Bryce Harrington
no flags Details
Screenshot.png (13.22 KB, image/png)
2009-07-13 21:11 UTC, Bryce Harrington
no flags Details
Xorg.0.log (68.53 KB, text/x-log)
2009-07-13 21:12 UTC, Bryce Harrington
no flags Details
Xorg.0.log.old (86.40 KB, application/x-trash)
2009-07-13 21:12 UTC, Bryce Harrington
no flags Details
screenshot with ugly font corruption (83.59 KB, image/jpeg)
2010-03-09 02:45 UTC, Christian Schafmeister
no flags Details

Description Bryce Harrington 2009-07-13 21:10:44 UTC
Created attachment 27668 [details]
corrupt2.png

Forwarding this bug from Ubuntu reporter Jeffrey Baker:
https://bugs.edge.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/391445

[Problem]
Screen corruption occurs frequently.  See attached screenshot.

[Original Report]
On Karmic x86_64 with Intel GM965 graphics and xorg driver 2:2.7.99.1+git20090602.ec2fde7c-0ubuntu2 I am experience frequent corruption of the display. There is nothing unusual in the logs and I have no xorg.conf. Screenshots are attached.
Comment 1 Bryce Harrington 2009-07-13 21:11:16 UTC
Created attachment 27669 [details]
corrupt.png
Comment 2 Bryce Harrington 2009-07-13 21:11:54 UTC
Created attachment 27670 [details]
Screenshot.png
Comment 3 Bryce Harrington 2009-07-13 21:12:15 UTC
Created attachment 27671 [details]
Xorg.0.log
Comment 4 Bryce Harrington 2009-07-13 21:12:37 UTC
Created attachment 27672 [details]
Xorg.0.log.old
Comment 5 Bryce Harrington 2009-07-13 21:13:07 UTC
00:00.0 Host bridge [0600]: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller [8086:29c0] (rev 02)
	Subsystem: Holco Enterprise Co, Ltd/Shuttle Computer Device [1297:3106]
00:02.0 VGA compatible controller [0300]: Intel Corporation 82G33/G31 Express Integrated Graphics Controller [8086:29c2] (rev 02)
	Subsystem: Holco Enterprise Co, Ltd/Shuttle Computer Device [1297:3106]
Comment 6 jwbaker 2009-07-13 22:42:14 UTC
Thanks for reporting this over here, Bryce.  Note that I originally saw various corruption on a 965 and lately I have seen it on a G31, if that makes a difference.
Comment 7 Carl Worth 2009-07-31 10:49:54 UTC
Thanks for the bug report Jeffrey,

As for the two different chipsets, the 965 and G31 belong to the same family of harware, (and no, the naming rarely makes that obvious), so it's not too surprising that the behave similarly.

As for the corruption shown in the screenshots, the two effects look quite distinct so likely have different underlying causes. The font corruption looks a lot like a bug that was fixed in the kernel as of the commit below, (which should have first appeared in 2.6.30-rc8 and subsequently in 2.6.31). The attached X.org.log file shows kernel 2.6.31 so hopefully that commit is in place.

It might be worth attempting to boot with a different kernel, (say vanilla 2.6.31 or so), to see if that results in anything different.

-Carl

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>
Comment 8 Chris Wilson 2009-12-02 09:50:19 UTC
And we've also fixed a few missing cache flushes which may also be significant:

commit 9a2c18fb92659d57741bfdcacbe4f69aab361532
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Sun Nov 29 21:07:45 2009 +0000

    batch: Emit a 'pipelined' flush when using a dirty source.
    
    Ensure that the render caches and texture caches are appropriately
    flushed when switching a pixmap from a target to a source.
    
    This should fix bug 24315,
      [855GM] Rendering corruption in text (usually)
      https://bugs.freedesktop.org/show_bug.cgi?id=24315

Is this bug still reproducible after these fixes? Thanks.
Comment 9 Christian Schafmeister 2010-03-09 02:45:50 UTC
Created attachment 33885 [details]
screenshot with ugly font corruption
Comment 10 Christian Schafmeister 2010-03-09 02:46:10 UTC
This bug still occures when using the following versions:

mesa-7.5.2
xorg-server 1.7.5
intel driver svn build (2010-03-06)
drm-intel kernel svn build (2010-03-06)

This bug only occures after a suspend / resume cycle. I also attached a screenshot with red rectangles around two corruption sections.
Comment 11 Chris Wilson 2010-07-24 03:53:56 UTC
Ok, I am wondering if the memory corruption with i915 suspend fixed by Linus in 2.6.35-rc6 is a critical factor here. Please can you try the latest bits.
Comment 12 Yngve Inntjore Levinsen 2011-05-30 00:35:44 UTC
Hello,

I have similar issues with Intel Integrated graphics. For me the drawing problems first occured when I switched from an old 19" to a new 24" screen, using 1900x1200 resolution. I am using Arch Linux, which means I have a newer kernel:
$ uname -a
Linux abpc1154 2.6.38-ARCH #1 SMP PREEMPT Fri May 13 09:24:47 CEST 2011 x86_64 Intel(R) Pentium(R) D CPU 3.40GHz GenuineIntel GNU/Linux

From lspci:
00:02.0 VGA compatible controller: Intel Corporation 82945G/GZ Integrated Graphics Controller (rev 02)

I first reported it as a kwin bug since I did not know where to go with the information, you can find that report here:
https://bugs.kde.org/show_bug.cgi?id=272412

Please let me know if this is the same bug or if I should open a new report (or look further if it is reported elsewhere). Please also let me know if you need further information. Thanks.
Comment 13 Chris Wilson 2012-02-08 12:23:03 UTC
Mass status change to NEEDINFO based on presence of NEEDINFO keyword. Please reopen if you can still reproduce the bug and are able to provide the information requested, thanks.
Comment 14 Chris Wilson 2012-10-21 14:30:24 UTC
Timeout. Please do reopen if you can still reproduce the issue and help us diagnose the problem, thanks.


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.