Bug 14523 - [965 EXA without DRI] Missing refresh on part of the screen, leading to artifacts
Summary: [965 EXA without DRI] Missing refresh on part of the screen, leading to artif...
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Wang Zhenyu
QA Contact: Xorg Project Team
Keywords: NEEDINFO
Depends on:
Blocks: 15000
  Show dependency treegraph
Reported: 2008-02-16 07:33 UTC by Robert Buchholz
Modified: 2008-03-26 05:20 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:

dmesg (26.16 KB, text/plain)
2008-02-18 08:35 UTC, Robert Buchholz
no flags Details
Xorg.0.log (52.08 KB, text/plain)
2008-02-18 08:36 UTC, Robert Buchholz
no flags Details
xrandr-verbose (1.99 KB, text/plain)
2008-02-18 08:36 UTC, Robert Buchholz
no flags Details
Scrolling (60.14 KB, image/jpeg)
2008-02-18 08:59 UTC, Robert Buchholz
no flags Details
OK Box Bad (66.48 KB, image/jpeg)
2008-02-18 09:00 UTC, Robert Buchholz
no flags Details
OK Box Good (89.50 KB, image/jpeg)
2008-02-18 09:01 UTC, Robert Buchholz
no flags Details
Xorg.0.log (DRI working, good) (57.01 KB, text/plain)
2008-03-04 16:14 UTC, Robert Buchholz
no flags Details
Xorg.1.log (DRI not working, bad) (39.91 KB, text/plain)
2008-03-04 16:14 UTC, Robert Buchholz
no flags Details
possible i965 fix (334 bytes, patch)
2008-03-18 01:02 UTC, Wang Zhenyu
no flags Details | Splinter Review
i965 possible patch (fix vt switch) (743 bytes, patch)
2008-03-18 01:56 UTC, Wang Zhenyu
no flags Details | Splinter Review

Description Robert Buchholz 2008-02-16 07:33:27 UTC
The image is not updated in certain areas of the screen. I can only see this on the display, it looks good in screenshots.

The effect: Characters in the bugzilla text field not disappearing when i hit backspace, or marked text is not actually marked. Same happens in the console, where the last entered command does not disappear when i hit return (when the prompt is at the lower end of the console).

When moving the window, I can see things as usual again.

This happens with (2.1.1 works fine) on an Intel GMA X3100 (i965), Gentoo, amd64, with GCC 4.2.2.
CC'ing Remi per request.
Comment 1 Gordon Jin 2008-02-17 02:38:17 UTC
Please provide more info according to http://intellinuxgraphics.org/how_to_report_bug.html. Thanks.
Comment 2 Michael Fu 2008-02-17 21:17:28 UTC
Also, what if you disable framebuffer compression?
Comment 3 Robert Buchholz 2008-02-18 04:58:39 UTC
Sorry, I was not aware of the link before.

System environment:
-- chipset: i965
-- system architecture: 64-bit
-- xf86-video-intel:
-- xserver:
-- mesa:6.5.2-r1
-- drm:2.3.0
-- kernel:2.6.24-rc6-git3
-- Linux distribution:Gentoo Linux
-- Machine or mobo model:Lenovo Thinkpad X61T (UU394GE)

Reproducing steps:
Install driver, restart X

I'll attach log output and will retry without compression later, sorry for any delays.
Comment 4 Rémi Cardona 2008-02-18 06:09:23 UTC
Hum, I guess I forgot to check that in your original Gentoo bug report: have you tried with xorg-server- It's helped in a lot of cases.
Comment 5 Robert Buchholz 2008-02-18 08:35:32 UTC
Created attachment 14379 [details]
Comment 6 Robert Buchholz 2008-02-18 08:36:09 UTC
Created attachment 14380 [details]
Comment 7 Robert Buchholz 2008-02-18 08:36:21 UTC
Created attachment 14381 [details]
Comment 8 Robert Buchholz 2008-02-18 08:45:17 UTC
Remi, I could also reproduce this issue with
-- mesa:7.0.2
-- xorg-server:

Michael, I could reproduce this even with the Compression setting off.
Comment 9 Robert Buchholz 2008-02-18 08:59:52 UTC
Created attachment 14382 [details]

Open the bug, scroll down with the keyboard. The image will freeze as seen.
Comment 10 Robert Buchholz 2008-02-18 09:00:37 UTC
Created attachment 14383 [details]
OK Box Bad

KDM login window after I click "login", the OK button is missing.
Comment 11 Robert Buchholz 2008-02-18 09:01:00 UTC
Created attachment 14384 [details]
OK Box Good

... as soon as I move the mouse over it, it's good again.
Comment 12 Wang Zhenyu 2008-02-19 18:12:33 UTC
Could you try to git-bisect which commit from 2.1.1 caused this problem?
Comment 13 Robert Buchholz 2008-02-24 09:45:58 UTC
I bisected the problem down to this commit:

commit cb4e5796f0537ea5e0e646d473930c7b826c85d8
Author: Jesse Barnes <jesse.barnes@intel.com>
Date:   Thu Nov 8 18:13:47 2007 -0800

    Default to EXA

    If EXA is compiled into the driver, default to using it for acceleration.
    Hopefully we can remove XAA entirely one day.

That is, 43a59ab26b09fcc24de1ed7bd770bb622f899ceb did not have this prblem.
Comment 14 Gordon Jin 2008-02-24 17:33:06 UTC
So it's EXA issue. Reassigning to Zhenyu.

Robert, so you can set "Accel XAA" in xorg.conf as a temp solution.
Comment 15 Wang Zhenyu 2008-02-24 17:57:31 UTC
Does this happen when DRI is enabled? Try to load i915.ko drm kernel module.
Comment 16 Robert Buchholz 2008-02-25 07:46:14 UTC
I can confirm using the with Option "AccelMethod" "XAA" is a workaround for the issue.
Installing (and having Xorg load) the i915 drm kernel module also resolves this.

Or, in short: EXA without DRI does not work.
Comment 17 Wang Zhenyu 2008-02-26 00:22:40 UTC
gordon, pls help to verify this on i965 with DRI option.
Comment 18 Gordon Jin 2008-02-27 01:00:34 UTC
It's working fine on my 965GM machine with dri off or on. 
I'm using 2.2.1 + xserver 1.4 branch.
Comment 19 Rémi Cardona 2008-02-27 04:20:51 UTC
Gordon, what if you don't build DRI support at all? We offer that option in Gentoo, so maybe a different code path is involved when running --without-dri.
Comment 20 Robert Buchholz 2008-02-27 05:35:33 UTC
I compiled in DRI support, just did not install the kernel module.
Comment 21 Rémi Cardona 2008-02-27 05:53:16 UTC
Robert, what about if you don't compile DRI support in the driver? In the server?
Comment 22 Robert Buchholz 2008-03-04 16:13:39 UTC
Sorry for the delays. I'll try not compiling that in later this week.

I also noticed that this bug can be triggered when I start two instances of X simultaneously ("Start new session" in KDE). The second session says in the Xorg.1.log:
(II) intel(0): [drm] DRM interface version 1.0
(II) intel(0): [drm] drmSetBusid failed (8, pci:0000:00:02.0), Permission denied
(EE) intel(0): [dri] DRIScreenInit failed. Disabling DRI.

I'll attach both logs for details.
Comment 23 Robert Buchholz 2008-03-04 16:14:37 UTC
Created attachment 14841 [details]
Xorg.0.log (DRI working, good)
Comment 24 Robert Buchholz 2008-03-04 16:14:47 UTC
Created attachment 14843 [details]
Xorg.1.log (DRI not working, bad)
Comment 25 Wang Zhenyu 2008-03-18 01:02:24 UTC
Created attachment 15248 [details] [review]
possible i965 fix

Pls try this patch, although I haven't got idea why this might work.
Comment 26 Wang Zhenyu 2008-03-18 01:56:58 UTC
Created attachment 15249 [details] [review]
i965 possible patch (fix vt switch)
Comment 27 Wang Zhenyu 2008-03-25 18:08:03 UTC
Eric has similar patch upstream now, close this.
Comment 28 Robert Buchholz 2008-03-26 05:20:02 UTC
Just to verify: I have tried my reproducer-setup (drm disabled in the kernel) with git c13efdd3d6d3846078766814b57306a7519bce18 (including Eric's patch) and I could not reproduce the issues anymore.

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.