Bug 64841 - [SNA] Pixmap corruption in pidgin (Gtk+ and Firefox)
Summary: [SNA] Pixmap corruption in pidgin (Gtk+ and Firefox)
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: unspecified
Hardware: Other Linux (All)
: medium normal
Assignee: Chris Wilson
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
: 64881 (view as bug list)
Depends on:
Blocks:
 
Reported: 2013-05-21 21:23 UTC by Matti Hämäläinen
Modified: 2014-01-10 01:49 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
Corrupted window area in a Gtk+2 app (Pidgin), after a floating "hover notification" box has disappeared, the area under it is corrupted. (127.27 KB, image/png)
2013-05-21 21:23 UTC, Matti Hämäläinen
no flags Details
Another screenshot. (143.81 KB, image/png)
2013-05-21 21:25 UTC, Matti Hämäläinen
no flags Details
Example of corruption (82.88 KB, image/png)
2014-01-09 01:20 UTC, Konstantin Svist
no flags Details

Description Matti Hämäläinen 2013-05-21 21:23:58 UTC
Created attachment 79630 [details]
Corrupted window area in a Gtk+2 app (Pidgin), after a floating "hover notification" box has disappeared, the area under it is corrupted.

Corrupted pixmaps (cached, I suppose) all around in Gtk+2 at least, and increasingly in Firefox (latest beta 22.0). Gtk+ corruptions seemed to appear after upgrading to latest GIT version of the Intel driver. Kernel upgrade from 3.8.13 -> 3.9.3 made no apparent difference.

Occasional corruptions in Firefox have been around for quite a while (and reported separately), so that's probably another bug entirely.

-- Window manager: WindowMaker 0.95.4
-- chipset: 00:02.0 VGA compatible controller: Intel Corporation 82G33/G31
Express Integrated Graphics Controller (rev 10)
-- system architecture: i686 / 32bit
-- xf86-video-intel: GIT abe85adda51c58d3f3b9c5dea6cec4b13a65cdcd
-- xserver: X.Org X Server 1.12.4-6 from latest Debian testing
-- mesa: 8.0.5-4 from Debian testing
-- libpixman: 0.26.0-4
-- libdrm version: 2.4.40-1
-- kernel version: 3.9.3 (vanilla from kernel.org)
-- Linux distribution: current Debian Testing
-- Machine or mobo model: Asus P5KPL-CM
-- Display connector: VGA
Comment 1 Matti Hämäläinen 2013-05-21 21:25:55 UTC
Created attachment 79631 [details]
Another screenshot.
Comment 2 Chris Wilson 2013-05-21 21:31:33 UTC
Try reverting:

commit 8e42637050275945200797538a34c13c90b295cc
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Tue May 21 11:13:03 2013 +0100

    sna: Re-enable read-read optimisations
Comment 3 Chris Wilson 2013-05-21 21:34:52 UTC
Matti, I thought we had closed your ff corruption bugs?
Comment 4 Matti Hämäläinen 2013-05-21 21:57:44 UTC
Well, at some point were rather rare and extremely difficult to reproduce, but now they seem to have made a comeback. Reproducability is still a question mark, but they occur every once in a while.
Comment 5 Matti Hämäläinen 2013-05-21 22:08:18 UTC
Tried reverting that changeset, no effect for the Gtk+ corruption depicted in the screenshots at least -- still occurs.
Comment 6 Chris Wilson 2013-05-23 10:01:05 UTC
*** Bug 64881 has been marked as a duplicate of this bug. ***
Comment 7 Chris Wilson 2013-05-23 10:01:20 UTC
The big scary change would be the introduction of cow support. To test, you can disable it with:

diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
index 371abb0..fc82e09 100644
--- a/src/sna/sna_accel.c
+++ b/src/sna/sna_accel.c
@@ -68,7 +68,7 @@
 #define USE_CPU_BO 1
 #define USE_USERPTR_UPLOADS 1
 #define USE_USERPTR_DOWNLOADS 1
-#define USE_COW 1
+#define USE_COW 0
 
 #define MIGRATE_ALL 0
 #define DBG_NO_CPU_UPLOAD 0
Comment 8 Chris Wilson 2013-05-23 10:36:04 UTC
Masked by --enable-userptr. Will you stop running on such ancient kernels :-p
Comment 9 Chris Wilson 2013-05-23 11:58:32 UTC
commit ee7ea10148b7843091c3fa103f9f4476979f8b68
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Thu May 23 12:55:21 2013 +0100

    sna: Only flags the PolyFillRect as REPLACES if it is unclipped
    
    Otherwise we discard a fill operation that is required to initialise the
    pixmap before drawing commences.
    
    Fixes regression from
    commit ef9dc6fae585d5616446eedc1e6e91173f4064c1 [2.21.7]
    Author: Chris Wilson <chris@chris-wilson.co.uk>
    Date:   Mon May 20 11:08:51 2013 +0100
    
        sna: Undo a few more overwritten operations upon a bo
    
    Reported-by: Matti Hamalainen <ccr@tnsp.org>
    Reported-by: Clemens Eisserer <linuxhippy@gmail.com>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=64841
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Comment 10 Konstantin Svist 2014-01-09 01:20:44 UTC
Created attachment 91726 [details]
Example of corruption

I'm getting this/similar bug on Fedora 20 XFCE

[     9.229] (II) LoadModule: "intel"
[     9.229] (II) Loading /usr/lib64/xorg/modules/drivers/intel_drv.so
[     9.230] (II) Module intel: vendor="X.Org Foundation"
[     9.230]    compiled for 1.14.4, module version = 2.21.15
[     9.230]    Module class: X.Org Video Driver
[     9.230]    ABI class: X.Org Video Driver, version 14.1

Should I open a new bug?
Comment 11 Chris Wilson 2014-01-09 10:00:14 UTC
Before you do, you will want to try a much later driver.
Comment 12 Konstantin Svist 2014-01-10 01:49:19 UTC
Upgraded to git, don't see the problem so far


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.