Package: xserver-xorg-video-intel
Version: 2:2.3.2-2+lenny1
Severity: important
Hello,
since some time I am observing strange problem in Xorg:
Some "odds" remain on the screen in several applications (mozilla, xdvi,
acroread, ...), that appear:
- if one tries to select a region (xdvi, acroread)
- if one clicks a roll-down menu (mozilla) and does not select any
item, e.g.
by clicking outside of the window
It basically means that the respective part of the application window is
not
re-drawn. In all cases, the screen can be restored either by
iconifying/de-iconifying the application window (acroread, xdvi) or by
simply
moving the window in any direction (mozilla).
This behaviour appears since xserver-xorg-core (>= 1.4) with the respective
xserver-xorg-video-intel driver (>= 2:2.2), I tried with current testing,
unstable and even experimental distributions, they all behave in the same
manner.
In the older versions, e.g. in
ii xserver-xorg 1:7.2-5
ii xserver-xorg-core 2:1.3.0.0.dfsg-12lenny2
ii xserver-xorg-input-evdev 1:1.1.5-3
ii xserver-xorg-input-kbd 1:1.2.0-1+1.2.1
ii xserver-xorg-input-mouse 1:1.2.2-1
ii xserver-xorg-input-synaptics 0.14.7~git20070517-2
ii xserver-xorg-video-intel 2:2.1.0-2
everything works well. This is nice, but prevents me from any further
upgrades.
I've investigated the problem in several Xorg versions and settings, the
problem seems to be in the combination of BackingStore and acceleration
method used by the intel driver. Whereas in the older version (xserver 1.3,
see the installed packages above) intel uses XAA acceleration method, newer
intel drivers use EXA method by default. However, when using XAA method
with
newer drivers, another problem appear in ROOT application
(http://root.cern.ch,
packages are parts of standard debian archives nowadays):
- the resulting graphics window (so-called TCanvas) does not remember its
content when another window is being moved over. This is exactly why
BackingStore has been developed long time ago, but it does not work
under
these circumstances.
- other applications that need BackingStore (e.g. paw, part of cernlib)
work correctly, i.e. the graphics window does remember its content
This feature also makes Xwin quite unsusable.
When comparing the outputs in /var/log/Xorg.0.log, I got impression that
framebuffer compression may play a role. In the old version
(xserver-1.3), the
respective part looks like:
(II) intel(0): [drm] DRM interface version 1.3
(II) intel(0): [drm] created "i915" driver at busid "pci::00:02.0"
(II) intel(0): [drm] added 8192 byte SAREA at 0xf897c000
(II) intel(0): [drm] mapped SAREA 0xf897c000 to 0xb7b45000
(II) intel(0): [drm] framebuffer handle = 0xf00f
(II) intel(0): [drm] added 1 reserved context for kernel
(II) intel(0): Unable to use TTM-based memory manager with DRM version 1.6
(II) intel(0): [drm] Registers = 0xfaf8
(II) intel(0): [drm] ring buffer = 0xf000
(II) intel(0): [drm] init sarea width,height = 1400 x 1400 (pitch 2048)
(II) intel(0): [drm] Mapping front buffer
(II) intel(0): [drm] Front Buffer = 0x2e01e000
(II) intel(0): [drm] Back Buffer = 0xf400
(II) intel(0): [drm] Depth Buffer = 0xf500
(II) intel(0): [drm] textures = 0xf600
(II) intel(0): [drm] Initialized kernel agp heap manager, 33554432
(II) intel(0): [dri] visual configs initialized
(II) intel(0): Page Flipping disabled
(==) intel(0): Write-combining range (0xf000,0x800)
(II) intel(0): vgaHWGetIOBase: hwp->IOBase is 0x03d0, hwp->PIOOffset is
0x
(II) intel(0): Using XFree86 Acceleration Architecture (XAA)
Screen to screen bit blits
Solid filled rectangles
8x8 mono pattern filled rectangles
Indirect CPU to Screen color expansion
Solid Horizontal and Vertical Lines
Offscreen Pixmaps
Setting up tile and stipple cache:
32 128x128 slots
32 256x256 slots
16 512x512 slots
(**) intel(0): Option "BackingStore" "true"
(**) intel(0): Backing store enabled
(==) intel(0): Silken mouse enabled
(II) intel(0): Initializing HW Cursor
--
when using xserver 1.4, framebuffer compression gets automatically disabled
(and EXA is the default method as already mentioned above). The output
looks
like as follows:
--
(II) intel(0): [drm] Using the DRM lock SAREA also for drawables.
(II) intel(0): [drm] framebuffer mapped by ddx driver
(II) intel(0): [drm] added 1 reserved context for kernel
(II) intel(0): X context handle = 0x1
(II) intel(0): [drm] installed DRM signal handler
(**) intel(0): Framebuffer compression enabled
(**) intel(0): Tiling enabled
(==) intel(0): VideoRam: 131072 KB
(II) intel(0): Attempting memory allocation with tiled buffers.
(WW) intel(0): xf86AllocateGARTMemory: allocation of 1536 pages failed
(Cannot allocate memory)
(WW) intel(0): Allocation error, framebuffer comp