[i945gm] [karmic] X servers hangs when settings up dual monitor config

Bug #438000 reported by Alexis de Lattre
150
This bug affects 27 people
Affects Status Importance Assigned to Milestone
xserver-xorg-video-intel (Ubuntu)
Confirmed
Medium
Unassigned

Bug Description

Binary package hint: xserver-xorg-video-intel

I am using an up-to-date Karmic Koala. The X server works very fine... until I want to connect an external monitor to my laptop. The scenario of the bug is :
1. I am using the laptop without external monitor -> everything OK
2. I connect an external monitor
3. I start "gnome-display-properties" or "xrandr --verbose"
4. the X server hangs immediately after, the screen becomes mostly black with some parts of the screen still showing a frozen graphical image. I can't do anything, not even go to a console -> hard reboot.

This dual monitor setup used to work fine with Ubuntu intrepid and jaunty on this laptop.

You will find enclosed the logs of the server when it hangs.

ProblemType: Bug
Architecture: i386
Date: Mon Sep 28 10:10:04 2009
DistroRelease: Ubuntu 9.10
MachineType: Dell Inc. Latitude D420
Package: xserver-xorg-video-intel 2:2.8.1-1ubuntu2
PccardctlIdent:
 Socket 0:
   no product info available
PccardctlStatus:
 Socket 0:
   no card
ProcCmdLine: root=UUID=ebac4109-88d3-4d59-a881-c16cc8ab66b3 ro quiet splash
ProcEnviron:
 LANGUAGE=fr_FR.UTF-8
 LANG=fr_FR.UTF-8
 SHELL=/bin/zsh
ProcVersionSignature: Ubuntu 2.6.31-11.36-generic
RelatedPackageVersions:
 xserver-xorg 1:7.4+3ubuntu5
 libgl1-mesa-glx 7.6.0~git20090817.7c422387-0ubuntu5
 libdrm2 2.4.13-1ubuntu1
 xserver-xorg-video-intel 2:2.8.1-1ubuntu2
 xserver-xorg-video-ati 1:6.12.99+git20090825.fc74e119-0ubuntu2
SourcePackage: xserver-xorg-video-intel
Uname: Linux 2.6.31-11-generic i686
dmi.bios.date: 02/02/2008
dmi.bios.vendor: Dell Inc.
dmi.bios.version: A06
dmi.board.name: 0TJ984
dmi.board.vendor: Dell Inc.
dmi.chassis.type: 8
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.:bvrA06:bd02/02/2008:svnDellInc.:pnLatitudeD420:pvr:rvnDellInc.:rn0TJ984:rvr:cvnDellInc.:ct8:cvr:
dmi.product.name: Latitude D420
dmi.sys.vendor: Dell Inc.
fglrx: Not loaded
system:
 distro: Ubuntu
 architecture: i686kernel: 2.6.31-11-generic

[lspci]
00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller [8086:27a2] (rev 03)
     Subsystem: Dell Device [1028:01d6]

Revision history for this message
Alexis de Lattre (alexis-via) wrote :
Bryce Harrington (bryce)
Changed in xserver-xorg-video-intel (Ubuntu):
status: New → Confirmed
Geir Ove Myhr (gomyhr)
tags: added: 945gm dual-head karmic
Bryce Harrington (bryce)
description: updated
Revision history for this message
Alexis de Lattre (alexis-via) wrote :

How can I help more on this issue ?

It is really a critical issue (because of this bug, I need to reboot into Windows every time I want to connect to a video projector) and the release date of Karmic is getting closer. As an Intel video card user, I suffered a lot when Jaunty was released, and I would not like to have the same horrible experience when Karmic is released.

Loïc Minier (lool)
Changed in xserver-xorg-video-intel (Ubuntu):
importance: Undecided → Medium
Revision history for this message
Alexis de Lattre (alexis-via) wrote :

Just a quick note to say that the bug is still present with an up-to-date Karmic (with xserver-xorg-video-intel version 2:2.9.0-1ubuntu2 currently installed) and is still 100% reproductible.

Revision history for this message
irve (jaagup-irve) wrote :

Commenting in hopes of getting this issue fixed before release.

Adding an external monitor freezes my Ubuntu on Dell Latitude d430 so this is not an isolated issue.

Revision history for this message
Pawan (kucikac) wrote :

Hi, i have ubuntu 9.10, intel 945gm express family video card etc...
i was trying somehow to setup dual monotors but always with problems like.. on both monitors black screen and with freez..
then i red somewhere that the default virtual screen is movin around 2000x2000
i got internal 1280x800 lcd on my notebook and external lcd has 1920x1080... i installed ArandR and i saw that my virtual screen is set to 1920x1080, so its same as my actual output on external monitor (1920x1080) So a set my internal lcd to 1024x768 and my external lcd to 832x624 so they both could fit to virtual screen size 1920x1080... and voila... my dual monitor set up works...
except one problem... small not native resolutions...
and second thing... i am able to use native resolutions (1280x800 and 1920x1080) on both monitors in dual monitors setup but one of them must be above the other. its wierd. Its like the virtual screen resolution needs to change x and y axis..
in my case from 1880x1920 (works,one above the other) to 3200x1080 (one to the left/right the other)
I dont know what to do about that, thats why i posted this..maybe it helps, may be not, iam not even sure if it fits to this bug u r discusing about... but could u plz at least tell me why this is happening and how could i repair it? thx

Revision history for this message
Alexis de Lattre (alexis-via) wrote :

After reading https://bugs.freedesktop.org/show_bug.cgi?id=22076, I disabled compiz and moved to metacity, and I can now setup dual screen fine, no more bug ! I am currently writing this comment from my dual screen setup with metacity !

So, moving from compiz to metacity is a simple workaround for this bug.

Revision history for this message
Loïc Minier (lool) wrote :

Does that mean your bug is the same bug as bug #383345?

(The descriptions are subtly different.)

Revision history for this message
Alexis de Lattre (alexis-via) wrote :

That's a question I am also asking myself. The descriptions are a bit different, but, when doing more test on this bug yesterday with compiz enabled, it happened once that, after going to dual screen mode, the screen went black with only the white mouse pointer displayed and moving (this happened only once, the other times I had the frozen screen with garbage on display as usual). In bug #383345, the initial report says that the mouse pointer is moving on display after the freeze.

Something I shall add : I have no /etc/X11/xorg.conf file (probably because I have a fresh install of karmic), so I can't give any detail about the "virtual resolution".

My guess is that the underlying bug is the same as #383345, but we can't be 100% sure.

Revision history for this message
irve (jaagup-irve) wrote :

I switched to metacity ( metacity --replace ), then connected the second screen (yes, it works!).

When I try to get back to compiz (compiz --replace), then I get the following error:

xset q doesn't reveal the location of the log file. Using fallback /var/log/Xorg.0.log
Detected PCI ID for VGA:
Checking for texture_from_pixmap: present.
Checking for non power of two support: present.
Checking for Composite extension: present.
Checking screen 1Comparing resolution (2560x1024) to maximum 3D texture size (2048): Failed.
aborting and using fallback: /usr/bin/metacity

This probably sums up the problem quite well.

Revision history for this message
Pawan (kucikac) wrote :

Yeah it really works with metacity... but its wierd that this simple thing doesnt come to me sooner, i needed to saw somewhere.. may be am old for this:D
hmm..is there any diference between setting compiz in appearance to "none" and command in terminal metacity --replace?
because i think i tried to set "none" option in appearance.. and tried to start dual monitors setup but it failed..
anyway thx much...

Revision history for this message
hardke01 (hardke01) wrote :

I can also confirm that i am receiving these issues on the 9.10 release.
i have dual monitor setup using 1024x768 on laptop monitor and 1280x1024 on external monitor. Enabling compiz causes X lockup and prevents any system use, a reboot is then the only way to unfreeze.
I also had lots of problems with jaunty video output and the 2048 texture limit.

Laptop contains the Intel 945GM card and appears to be a common component in lots of video problems.

Revision history for this message
irve (jaagup-irve) wrote :

I have since determined the probable cause for the lockup to appear just now.

The xrandr device naming switched from VGA to VGA1 and that broke my monitor enabling script and in stead of showing the same part of screen on both monitors, it tried to expand to another monitor, which probably caused the lockup.

Bryce Harrington (bryce)
summary: - [karmic] X servers hangs when settings up dual monitor config
+ [i945gm] [karmic] X servers hangs when settings up dual monitor config
Revision history for this message
Mario Beltrán (mbeltran) wrote :

The same error. I connect the Monitor and it freeze, I restart and i had mirror screens activated. I open the display preferences and tried to remove the mirror but I got a black screen in both...

I have Thinkpad T60 with Intel Video Card. I just did a clean install (9.10) yesterday, before it worked correctly.

Cheers,

Revision history for this message
jpiesing (jon33040) wrote :

I'm seeing similar symptoms with a clean Karmic install on a Dell Latitude D420. Connect up a second screen, go to system/preferences/display and the display hangs with a black screen. The graphics controller is as follows;

00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03)

Revision history for this message
jpiesing (jon33040) wrote :

I've been doing some more testing on the Dell D420 referred to in #14.
If I boot with the 2nd monitor connected, the system starts with the displayed mirrored.
I can then use system / preferences / display to make the displays different.
If I unplug the monitor, I can use system / preferences / display to reset it back to a single display and it works.
If I then plug-in the monitor again, the display hangs in the same way as if the laptop was booted without a second display connected. Both primary and secondary screens are blank except for a stationary cursor on the secondary monitor.

If I switch to metacity as described in this thread, dual screens just work.

Revision history for this message
Cliff (klfjoat) wrote :

The following comment in bug 383345 seems to sum up the root cause of this issue. Though, why it worked in Jaunty and not in Karmic, I don't know. No bling for me!

> Please, before setting dual screen, disable desktop effects (compiz).
> Compiz cannot work at resolution higher than 2048x2048 (yet) on
> i915/945 hardware, limitation of HW 2048x2048 max texture size.
> Without Desktop effects your dual screen configuration should work.
> (it is then limited to 4096x4096 framebuffer size.)
> With Desktop effects and resolution 1024+1024, you probably
> will experience this BUG.

https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/383345/comments/62

alkan (agur1972)
Changed in xserver-xorg-video-intel (Ubuntu):
status: Confirmed → New
Bryce Harrington (bryce)
Changed in xserver-xorg-video-intel (Ubuntu):
status: New → Confirmed
Revision history for this message
alex kalderimis (alexkalderimis) wrote :

I am having this issue with up-to-date post-release fresh install of karmic i386 32bit with intel 945gm. It is very annoying to have to restart simply to use dual head. It is very predictable and consistent. This worked just fine in Jaunty.

Will try the metacity workaround - would prefer working compiz.

Revision history for this message
Philipp Wendler (philw85) wrote :

I am affected by this bug, too, and it definitely needs to be fixed. I can't believe that this bug got into the release, especially since it was reported 6 weeks ago. If you need any more information or testers of fixes, please tell me how I can help.

Revision history for this message
Philipp Wendler (philw85) wrote :

Switching to metacity before connecting the second monitor works for me. Interestingly, I can enable compiz with the second monitor connected, the output produced by it is as follows:

Checking for Xgl: not present.
xset q doesn't reveal the location of the log file. Using fallback /var/log/Xorg.0.log
Detected PCI ID for VGA:
Checking for texture_from_pixmap: present.
Checking for non power of two support: present.
Checking for Composite extension: present.
Checking screen 1Comparing resolution (1024x768) to maximum 3D texture size (2048): Passed.
Checking for Software Rasterizer: Not present.
Checking for nVidia: not present.
Checking for FBConfig: present.
Checking for Xgl: not present.
WARNING: Application calling GLX 1.3 function "glXCreatePixmap" when GLX 1.3 is not supported! This is an application bug!
WARNING: Application calling GLX 1.3 function "glXDestroyPixmap" when GLX 1.3 is not supported! This is an application bug!
/usr/bin/compiz.real (video) - Warn: No 8 bit GLX pixmap format, disabling YV12 image format

Revision history for this message
dhenry (tfc-duke) wrote :

With kernel 2.6.32rc7 and xorg-edgers' intel driver (2.9.0+git), I could switch to a console (tty1), and dump kernel messages after the GPU hang (and reboot properly).

It seems that by default, the Gnome screen resolution menu sets external monitor to extended at right, which could break with compiz enabled if the with is greater than 2048. But what I don't understand is why does it hang when I just run "xrandr" command after hotplugging the monitor? (without setting up the external monitor yet)

Revision history for this message
dhenry (tfc-duke) wrote :

Ok I see, calling "xrandr" will by default expand the virtual screen as if the external monitor is right of LVDS, even if we directly call "xrandr --output VGA1 --below LVDS".

I tried with LVDS1=1280x800 and VGA1=1280x1024 (native resolutions, chosen by default).
VGA1 at the right/left of LVDS1 will result in a frame buffer of 2560x1024 => greater than 2048 (i945's hardware limit), crash with compiz.
VGA1 below/above LVDS1 will result in a frame buffer of 1280x1824 => Fits in 2048x2048 and works with compiz.

Running "xrandr --output VGA1 --below LVDS" first creates a 2560x1024 frame buffer before creating the proper 1280x1824 frame buffer (seen in Xorg.0.log without compiz). Therefore, it will always crash with compiz enabled. However we can do it with metacity (compiz disabled), and then put back compiz (compiz.real --replace), it will work.

In Xorg.0.log, after running the command given below:
(II) intel(0): Allocate new frame buffer 2560x1024 stride 4096
(II) intel(0): Allocate new frame buffer 1280x1824 stride 2048

If you have higher native resolutions for LVDS and/or external monitor, there is currently no solution with compiz.

Conclusion:

The problem is that "xrandr" and "gnome-display-properties" will systematically setup the external monitor next to the LVDS, without checking if it's possible. Those tools should not do this if hardware does not allow it. The problem is that those tools are not aware that compiz is running (which reduces the hardware limit to 2048x2048), and so try to create the too large frame buffer (which is legal without compiz).

Revision history for this message
nikolz419 (nickdichiera) wrote :

How do I disable compiz, I'm new to ubuntu

Revision history for this message
dhenry (tfc-duke) wrote :

In Gnome Appearance Properties (right clic on the desktop -> change wallpaper or in System menu), then in the last tab, chose "None".

Revision history for this message
Marek Kawczynski (mkawczynski) wrote :

I have same situation after upgrade to karmic. IMHO problem couldbe related to KMS which is by default enabled in karmic. KMS defines maximum virtual resolution to 4096x4096 (You can see it, just run xrandr in terminal). Unfortunatelly compiz cannot support this resolution for i945gm - there is hardware limitation to 2048x2048. After connecting external monitor, kernel or xserver is trying automaticaly setup both screens side by side what exceeds maximum value for X).

Revision history for this message
Savanni D'Gerinel (savanni) wrote :

I wish to add on a couple of details.

First, if the external monitor is plugged in when I boot the system, I can freely switch between laptop monitor and external without problems. If I ever unplug the external monitor and plug it back in, or if I plug it in after the system is booted, then trying to run any xrandr command (including xrandr --dry-run) locks the system.

Second, I find that in /var/log/messages, I have a block of 20 to 30 ^@ characters and then normal bootup messages, as if the last program logging to syslog dumped null data before crashing and then the system booted up normally.

Revision history for this message
psyopper (bfranks) wrote :

I am having the same issue with a Dell Mini 10 (Model 1011), Atom N230 and GMA 945. I successfully, and without any effort, had Compiz enabled while driving both the LVDS at 1024x576 and the VGA at 1024x768 right of LVDS in 9.04. Today I upgraded to 9.10 via update manager and now have this same issue.

Combined width is 2048 which is the max texture size (width) for the 945 chipset. This may not be a bug, but is most definitely a regression because I have lost functionality over a previous version.

As mentioned in the other bug, success can be had by arranging the screens vertically:

1. Switch to Metacity (Desktop Effects set to None)
2. Attach external monitor
3. Open Display Settings
4. Arrange external Below LVDS
5. Set proper screen size for the VGA (in my case it's actually 1280x1024)
6. Turn Compiz back on (Desktop Effects set to Extra)

This arrangement nets a virtual resolution of 1280 x 1792 which falls neatly inside of the accelerated buffer limit of 2048x2048 on the 945. The problem is, as mentioned, this is a regression from 9.04 (which did let me arrange them side by side) and is spatially difficult to maintain as I don't rest my netbook on top of my monitor as the arrangement seems to make me want to feel.

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.