[i945] Cursor movement, screenshot clipping and redraw problems on dual-headed, Intel 945GME desktop after 20081125 compiz/X update

Bug #302227 reported by Ricardo Bánffy
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
xf86-video-intel
Fix Released
High
xserver-xorg-video-intel (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

First shown with Compiz enabled on a two-screen netbook (Acer Aspire One, external 1024x768 screen to the right of built-in LCD) setup. Anything past the leftmost 800x600 would not be erased after being drawn and external monitor resolution would be misdetected.

Upon disabling Compiz, things are properly erased, but after login the pointer is restricted toi the leftmost 800x600 rectangle and I need to drag something outside the rectangle to be able to move the pointer freely.

lsb_release -rd says:

Description: Ubuntu 8.10
Release: 8.10

lspci says (about the display adapter):

00:02.0 VGA compatible controller: Intel Corporation Mobile 945GME Express Integrated Graphics Controller (rev 03)

Full package list is attached.

Revision history for this message
Ricardo Bánffy (rbanffy) wrote :
Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

Also, noticed just now:

- Can't drag mouse outside leftmost 800x600 region
- Can't drag icons outside leftmost 800x600 region
- Screenshots only grab the leftmost 800x600 rectangle (so I can't show most of what I am experiencing)
- Right-clicking icons in the top Gnome bar makes the pop-up menu appear in the leftmost position of the external monitor

Revision history for this message
Ricardo Bánffy (rbanffy) wrote : Re: Cursor movement, screenshot clipping and redraw problems on dual-headed, Intel 945GME desktop after 20081125 compiz/X update

Oh... And I have the proposed, backports and Skype repos enabled:

ricardo@adams:~$ grep '^deb' /etc/apt/sources.list
deb-src http://archive.ubuntu.com/ubuntu/ intrepid main restricted #Added by software-properties
deb http://archive.ubuntu.com/ubuntu/ intrepid main restricted
deb-src http://archive.ubuntu.com/ubuntu/ intrepid restricted main multiverse universe #Added by software-properties
deb http://archive.ubuntu.com/ubuntu/ intrepid-updates main restricted
deb-src http://archive.ubuntu.com/ubuntu/ intrepid-updates restricted main multiverse universe #Added by software-properties
deb http://archive.ubuntu.com/ubuntu/ intrepid universe
deb http://archive.ubuntu.com/ubuntu/ intrepid-updates universe
deb http://archive.ubuntu.com/ubuntu/ intrepid multiverse
deb http://archive.ubuntu.com/ubuntu/ intrepid-updates multiverse
deb http://archive.ubuntu.com/ubuntu/ intrepid-backports main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ intrepid-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu intrepid partner
deb-src http://archive.canonical.com/ubuntu intrepid partner
deb http://security.ubuntu.com/ubuntu intrepid-security main restricted
deb-src http://security.ubuntu.com/ubuntu intrepid-security restricted main multiverse universe #Added by software-properties
deb http://security.ubuntu.com/ubuntu intrepid-security universe
deb http://security.ubuntu.com/ubuntu intrepid-security multiverse
deb http://archive.ubuntu.com/ubuntu/ intrepid-proposed restricted main multiverse universe
deb-src http://archive.ubuntu.com/ubuntu/ intrepid-proposed restricted main multiverse universe #Added by software-properties
deb http://download.skype.com/linux/repos/debian/ stable non-free

Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

One more comment: X/Compiz work fine on the LCD-only configuration. The 800x600 rectangle the cursor is confined to in the double-headed config is notable because it's the same resolution that the GDM takes (probably because it's the largest VESA-like mode both monitors can show).

Revision history for this message
Geir Ove Myhr (gomyhr) wrote :

This is probably a bug in the intel video driver. Could you please attach the following information:
- The output of `lspci -vvnn`
- /var/log/Xorg.0.log
- /etc/X11/xorg.conf (if you have changed anything)

Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

Here's the lspci -vvnn output.

I will hook up the dual-headed setup and get the rest in a couple minutes.

Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

/var/log/Xorg.0.log

Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

inlining /etc/X11/xorg.conf

Virtual screen was set by the screen resolution applet, so, I am not sure if that qualifies as a change, but it's a small file anyway:

ricardo@adams:~$ cat /etc/X11/xorg.conf

Section "Screen"
 Identifier "Configured Screen Device"
 Device "Configured Video Device"
 SubSection "Display"
  Virtual 2048 768
 EndSubSection
EndSection

Section "Device"
 Identifier "Configured Video Device"
EndSection

Bryce Harrington (bryce)
Changed in xserver-xorg-video-intel:
status: New → Confirmed
Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

I have another interesting behavior from the computer: The problem did not manifest itself when the X was started in single-head mode and some time later I plugged a monitor with X running.

As it was expected, I plugged the external monitor on the machine, fired up the screen resolution utility and set the screen resolution for the external screen. Surprisingly, when the external monitor became the main screen, the animation artifacts did not manifest and the machine seemed to operate normally. The only catch was that, again, the mouse movement was restricted to the main screen and I had to drag something (the screen-resolution window) cross-monitors in order for it to work.

I hope this helps.

Revision history for this message
Michael Hackett (at217) wrote :

I'm seeing identical behaviour on an HP 2230s laptop with HDMI output to a DVI external monitor. If I turn off either the laptop screen or external monitor in the Screen Resolution preferences screen, everything works fine. If both are on, things get wonky (pretty much as described by Ricardo above). I also see the background image getting tiled into 4 rectangular areas, instead of filling the whole screen. These areas seem to be related to where the mouse gets trapped sometimes.

(Ricardo, do you have any problems if you configure Screen Resolution to use only the external monitor?)

I'll attach my lspci output for comparison; hope that is of some use.

Revision history for this message
Michael Hackett (at217) wrote :

And my /var/log/Xorg.0.log as well.

Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

Michael,

Just tried go single-head turning off the built-in LCD and it is working.

Today I had the opportunity to hook up the laptop to a couple odd monitors (I have a collection of "interesting computers" and recently got a couple Intergraph behemoths with coax and DB-15 connections). All were misdetected and the same rendering and pointer confinement anomalies happened.

Revision history for this message
Bryce Harrington (bryce) wrote :

[This is an automatic notice.]

We'd like to forward your bug upstream, however upstream requires
that you first test it against their newer driver code.

To save you the effort of building the driver from source, we've built
packages for the driver and its new dependencies.

So you have a couple options:

 1. Download and test .debs for intrepid, from:
     https://edge.launchpad.net/~intel-gfx-testing/+archive

 -or-

 2. Download and test the Jaunty alpha-2 (or newer) Live CD,
     (which includes a beta of the new xserver 1.6 as well).
     See http://cdimage.ubuntu.com/releases/9.04/ for ISOs

Thanks ahead of time! You can simply reply to this email to report your
findings.

P.S., if you wish to forward your bug upstream yourself, please follow
these directions to do so:
  http://intellinuxgraphics.org/how_to_report_bug.html

Changed in xserver-xorg-video-intel:
status: Confirmed → Incomplete
Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

Updated driver to intel-gfx-testing

Was:

ii xserver-xorg-video-intel 2:2.4.1-1ubuntu10.1 X.Org X server -- Intel i8xx, i9xx display d

Now is:

ii xserver-xorg-video-intel 2:2.5.1-1ubuntu5~intrepid X.Org X server -- Intel i8xx, i9xx display driver

The problems were not corrected. I am attaching two pictures taken from both screens that give an idea of what is happening.

Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

The second picture. This one shows the traces of unerased window renditions when terminal was unmaximized (as well as several other vestigial windows)

Revision history for this message
Bryce Harrington (bryce) wrote :

Thanks for testing; this should go upstream. Setting to Triaged for now.

Changed in xserver-xorg-video-intel:
status: Incomplete → Triaged
Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

I am not sure if this will still be seen by the upstream developers, but I think I have a better way of describing the problem that suggests it has a very simple fix.

Since the redraw vestiges happen only outside an 800x600 window (the same size the greeter used), it is possible that the background window (or however it may be called in Z/Compiz-speak) responsible for ensuring things get erased when needed is being sized at the same size the greeter used (800x600 in this case) instead of the size of the combined monitor area (2048x768).

I hope this helps.

Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

Update: The problem is present in Jaunty. Using xserver-xorg-video-intel 2:2.6.3-0ubuntu9 and compiz 1:0.8.2-0ubuntu8, more or less the same dual-monitor oddness persists. The difference is the login screen is not squashed in the built-in widescreen display, but is 800x600 on the secondary (still misdetected) monitor. Desktop background and mouse movement are still limited to the top-left 800x600 rectangle of the multi-head desktop until I drag the mouse. Windows are still not properly erased outside the top-left 800x600 region.

Is there a ticket with the upstream bug-tracker I could follow/help?

Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

Oddly enough, the problem vanished when I started the computer with the second monitor plugged in but turned off this morning and rearranged the dual-screen config with the screen applet. X still but started with mirrored screens at 800x600.

I will check the following:
- secondary screen added after X starts
- secondary screen plugged in but turned off when X starts
- secondary screen plugged in and turned on when X starts

I hope this sheds some light.

Anyway, kudos for the folks who solved part of the problem whatever it was.

Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

BTW, screenshots are still for the top-left 800x600. That wasn't solved.

Bryce Harrington (bryce)
tags: added: dual-head
tags: added: compiz
Geir Ove Myhr (gomyhr)
tags: removed: external
Revision history for this message
In , Bryce Harrington (bryce) wrote :
Download full text (3.4 KiB)

Created an attachment (id=25621)
Xorg.0.log

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

[Problem]
On dual-head setup, mouse cursor movement is restricted to a 800x600 window unless dragging; outside this area redraw in compiz is affected as well.

[Discussion]
First shown with Compiz enabled on a two-screen netbook (Acer Aspire One, external 1024x768 screen to the right of built-in LCD) setup. Anything past the leftmost 800x600 would not be erased after being drawn and external monitor resolution would be misdetected.

Upon disabling Compiz, things are properly erased, but after login the pointer is restricted to the leftmost 800x600 rectangle and I need to drag something outside the rectangle to be able to move the pointer freely.

Since the redraw vestiges happen only outside an 800x600 window (the same size the greeter used), it is possible that the background window (or however it may be called in Z/Compiz-speak) responsible for ensuring things get erased when needed is being sized at the same size the greeter used (800x600 in this case) instead of the size of the combined monitor area (2048x768).

- Can't drag mouse outside leftmost 800x600 region
- Can't drag icons outside leftmost 800x600 region
- Screenshots only grab the leftmost 800x600 rectangle (so I can't show most of what I am experiencing)
- Right-clicking icons in the top Gnome bar makes the pop-up menu appear in the leftmost position of the external monitor

One more comment: X/Compiz work fine on the LCD-only configuration. The 800x600 rectangle the cursor is confined to in the double-headed config is notable because it's the same resolution that the GDM takes (probably because it's the largest VESA-like mode both monitors can show).

I had the opportunity to hook up the laptop to a couple odd monitors (I have a collection of "interesting computers" and recently got a couple Intergraph behemoths with coax and DB-15 connections). All were misdetected and the same rendering and pointer confinement anomalies happened.

The problem is present in Jaunty. Using xserver-xorg-video-intel 2:2.6.3-0ubuntu9 and compiz 1:0.8.2-0ubuntu8, more or less the same dual-monitor oddness persists. The difference is the login screen is not squashed in the built-in widescreen display, but is 800x600 on the secondary (still misdetected) monitor. Desktop background and mouse movement are still limited to the top-left 800x600 rectangle of the multi-head desktop until I drag the mouse. Windows are still not properly erased outside the top-left 800x600 region.

Oddly enough, the problem vanished when I started the computer with the second monitor plugged in but turned off this morning and rearranged the dual-screen config with the screen applet. X still but started with mirrored screens at 800x600.

[lspci]
00:00.0 Host bridge [0600]: Intel Corporation Mobile 945GME Express Memory Controller Hub [8086:27ac] (rev 03)
 Subsystem: Acer Incorporated [ALI] Device [1025:015b]
00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 945GME Express Integrated Graphics Controller [8086:27ae] (rev 03)
 Subsystem: Acer...

Read more...

Revision history for this message
In , Bryce Harrington (bryce) wrote :

Created an attachment (id=25622)
dsc02225 (Modified in GIMP Image Editor).jpg

Revision history for this message
In , Bryce Harrington (bryce) wrote :

Created an attachment (id=25623)
dsc02224 (Modified in GIMP Image Editor).jpg

First one shows the 800x600 region where the driver works correctly that also crops the mouse pointer movement when the desktop starts.

This one shows the traces of unerased window renditions when terminal was unmaximized (as well as several other vestigial windows)

Revision history for this message
Bryce Harrington (bryce) wrote :

I've forwarded this bug upstream to https://bugs.freedesktop.org/show_bug.cgi?id=21626 - please subscribe to this bug in case upstream needs further information or wishes you to test something.

Changed in xserver-xorg-video-intel:
status: Unknown → Confirmed
Revision history for this message
In , Jesse Barnes (jbarnes-virtuousgeek) wrote :

I'm not sure if your driver includes this fix? I'm hoping it will fix this issue in DRI1 configurations.

commit 73aa23d9150121a4e4b70a78cab910acd164abf5
Author: Eric Anholt <email address hidden>
Date: Fri Dec 5 13:06:05 2008 -0800

    DRI1: Update sarea (and other information) when CRTC configuration changes.

Revision history for this message
In , Bryce Harrington (bryce) wrote :

Debs with the above patch available at:
  http://people.ubuntu.com/~bryce/Testing/ *~bug302227*deb

Revision history for this message
Bryce Harrington (bryce) wrote :
Revision history for this message
In , Ricardo Bánffy (rbanffy) wrote :

(In reply to comment #4)
> Debs with the above patch available at:
> http://people.ubuntu.com/~bryce/Testing/ *~bug302227*deb
>

Sorry to take this long to answer. The problem persists exactly as it was.

"dpkg -l xserver*" gives:

ii xserver-xorg-video-intel 2:2.6.3-0ubuntu9.3~bug302227~1 X.Org X server -- Intel i8xx, i9xx display driver

Same symptoms. Mirrored 800x600 screen on GDM start, mouse movement restriction to top-leftmost 800x600 rectangle after login (workaround: using "Display" icon on panel to briefly upside-down external monitor and restore previous config solves the movement and redraw issues). Screenshot is still limited to top-leftmost 800x600 area.

Please let me know id I can be of further assistance.

Bryce Harrington (bryce)
Changed in xserver-xorg-video-intel (Ubuntu):
importance: Undecided → Medium
Revision history for this message
In , Ricardo Bánffy (rbanffy) wrote :

I found a workaround for the screenshot problem: if I turn off the external monitor off and then turn it back on in the monitors applet, screenshots will be full 2048x768. Hope this is a useful clue.

Please let me know if I can be of further assistance.

Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

.debs at http://people.ubuntu.com/~bryce/Testing/ *~bug302227*deb did not solve the issue, but I found a workaround for the screenshot problem too: if I turn off the external monitor off and then turn it back on in the monitors applet, screenshots will be full 2048x768.

Please let me know if I can be of further assistance.

Revision history for this message
In , Jesse Barnes (jbarnes-virtuousgeek) wrote :

Have you tried the xorg edgers bits? If those work I'm inclined to close this one...

Revision history for this message
In , Ricardo Bánffy (rbanffy) wrote :

What are xorg edgers bits and how do I use them?

Revision history for this message
In , Bryce Harrington (bryce) wrote :
Revision history for this message
In , Jesse Barnes (jbarnes-virtuousgeek) wrote :

Pretty sure this isn't an issue with the DRI2 & UXA bits, so I'm closing this out

Revision history for this message
In , Ricardo Bánffy (rbanffy) wrote :

Can we wait to close the bug until I can properly test the package? Unless someone else with a similar hardware config (Acer Aspire One, dual headed) can test it, I would prefer to keep it open for a couple days until I can test the packages.

Revision history for this message
In , Jesse Barnes (jbarnes-virtuousgeek) wrote :

I've been using my AspireOne for awhile with recent bits w/o these problems, but we can wait until you test to close this.

Revision history for this message
In , Jesse Barnes (jbarnes-virtuousgeek) wrote :

Ricardo, have you had a chance to test this? I'm hoping we can close this...

Revision history for this message
In , Ricardo Bánffy (rbanffy) wrote :

I did.

I added the edgers sources do my sources.list, imported the key and apt-get updated/upgraded without incident. Upon restart, gdm came up fine, but, after login, the screen went blank and the mouse pointer clipped at 800x600. Restarting under xfce yielded a workable desktop, but without the second monitor. Gnome's gnome-display-properties found the second screen and was able to set it up, but, still, on Gnome, the screen was blank and the mouse got clipped. Deleting the xorg.conf file and restarting Gnome let me in a very weird screen with displaced bars and pointer (clicks were happening a couple hundred pixels up from the pointer).

I downgraded the packages back to former configuration, deleted xorg.conf and everything worked fine.

I made a small movie of the mouse movement clipping and of the displaced elements.

Interestingly enough, now, with Compiz off, everything works fine - screenshots and mouse movement are absolutely perfect (if boring)

I will attach the images. Let me know if you want the movie. I am reluctant to attach a 7.5 megabyte file.

Revision history for this message
In , Ricardo Bánffy (rbanffy) wrote :

Created an attachment (id=27352)
misplaced bars

The laptop screen with the misplaced display elements showing

Revision history for this message
In , Ricardo Bánffy (rbanffy) wrote :

Created an attachment (id=27353)
external monitor with displaced background

This shows the external screen with the background showing what appears to be the same displacement as the bars on the left screen

Revision history for this message
In , Ricardo Bánffy (rbanffy) wrote :

Actually, something went awfully wrong. Upon restart Compiz no longer works, mouse clips after Gnome login, icon placement also clips to 800x600. Can't move firefox window to second screen and I feel utterly miseable.

I am attaching my /var/log/Xorg.0.log and the relevant package list.

Revision history for this message
In , Ricardo Bánffy (rbanffy) wrote :

Created an attachment (id=27356)
/var/log/Xorg.0.log

Revision history for this message
In , Ricardo Bánffy (rbanffy) wrote :

Created an attachment (id=27357)
dpkg -l xserver* | grep ^ii

Revision history for this message
In , Ricardo Bánffy (rbanffy) wrote :

It seems I will have to reinstall a vanilla X from the Ubuntu repos. I will prepare to preserve any important data that's here and proceed wiping the system. You won't hear from me for a couple days.

Bryce Harrington (bryce)
tags: added: intrepid
Revision history for this message
In , Jesse Barnes (jbarnes-virtuousgeek) wrote :

Any news Ricardo?

Revision history for this message
In , Jesse Barnes (jbarnes-virtuousgeek) wrote :

Should be fixed with recent bits (i.e. with DRI2), closing out due to inactivity.

Changed in xserver-xorg-video-intel:
status: Confirmed → Invalid
Revision history for this message
Bryce Harrington (bryce) wrote :

Upstream believes this to be fixed now; can you confirm against Karmic-beta or newer Ricardo?

Changed in xserver-xorg-video-intel (Ubuntu):
status: Triaged → Incomplete
Revision history for this message
In , Ricardo Bánffy (rbanffy) wrote :

Tested with Ubuntu Karmic Koala Beta, booted of a live CD on 2009-10-08. Mouse movement clipping and other screen anomalies seem corrected, and everything seems smooth. There is another different problem that happened after I rearranged the screens a couple times and re-enabled Compiz: the framebuffer seemed orderly shuffled with a repeated interleaved pattern, but I could not reproduce it reliably, so I am not opening a new ticket. Bug 21626 is rightfully closed.

Sorry for the delay in testing, but it took a while to arrange the time needed to do it properly. Thanks to all involved.

Revision history for this message
Ricardo Bánffy (rbanffy) wrote : Re: [Bug 302227] Re: [i945] Cursor movement, screenshot clipping and redraw problems on dual-headed, Intel 945GME desktop after 20081125 compiz/X update

I just downloaded a karmic beta image. Will burn it and get back to
you tomorrow.

On Thu, Oct 8, 2009 at 12:21 AM, Bryce Harrington
<email address hidden> wrote:
> Upstream believes this to be fixed now; can you confirm against Karmic-
> beta or newer Ricardo?
>
> ** Changed in: xserver-xorg-video-intel (Ubuntu)
>       Status: Triaged => Incomplete
>
> --
> [i945] Cursor movement, screenshot clipping and redraw problems on dual-headed, Intel 945GME desktop after 20081125 compiz/X update
> https://bugs.launchpad.net/bugs/302227
> You received this bug notification because you are a direct subscriber
> of the bug.
>

--
Ricardo Bánffy
http://www.dieblinkenlights.com
http://twitter.com/rbanffy

Revision history for this message
Ricardo Bánffy (rbanffy) wrote :

Tested with Ubuntu Karmic Koala Beta, booted of a live CD on 2009-10-08. Mouse movement clipping and other screen anomalies seem corrected, and everything seems smooth. There is another different problem that happened after I rearranged the screens a couple times and re-enabled Compiz: the framebuffer seemed orderly shuffled with a repeated interleaved pattern, but I could not reproduce it reliably, so I am not opening a new ticket. Bug #302227 is rightfully closed.

Sorry for the delay in testing, but it took a while to arrange the time needed to do it properly. Thanks to all involved.

Changed in xserver-xorg-video-intel:
status: Invalid → Fix Released
Revision history for this message
Bryce Harrington (bryce) wrote :

Thanks for letting us know the issue is resolved.

Changed in xserver-xorg-video-intel (Ubuntu):
status: Incomplete → Fix Released
Changed in xserver-xorg-video-intel:
importance: Unknown → High
Changed in xserver-xorg-video-intel:
importance: High → Unknown
Changed in xserver-xorg-video-intel:
importance: Unknown → High
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.