xorg lockup when screen is rotated (i945gm)

Bug #174745 reported by lcampagn
4
Affects Status Importance Assigned to Milestone
xf86-video-intel
Fix Released
High
xserver-xorg-video-intel (Ubuntu)
Fix Released
High
Bryce Harrington

Bug Description

Binary package hint: xserver-xorg-video-intel

When I rotate my screen by xrandr, X crashes and hangs the machine. Here is the last part of Xorg.0.log.old, I'll attach the full log file after:

(WW) intel(0): PRB0_CTL (0x0001f001) indicates ring buffer enabled
(WW) intel(0): PRB0_HEAD (0x00407604) and PRB0_TAIL (0x00007610) indicate ring buffer not flushed
(WW) intel(0): Existing errors found in hardware state.
Error in I830WaitLpRing(), timeout for 2 seconds
pgetbl_ctl: 0x3ffc0001 pgetbl_err: 0x0
ipeir: 0 iphdr: 2000011
LP ring tail: 8 head: 7604 len: 1f001 start 0
eir: 0 esr: 0 emr: ffff
instdone: 81 instpm: 0
memmode: 306 instps: 800f04c4
hwstam: ffff ier: 0 imr: ffff iir: 0
Ring at virtual 0xa78e5000 head 0x7604 tail 0x8 count 25217
 00007584: 00000000
 00007588: 19083c00
 0000758c: 00000000
 00007590: 00000000
 00007594: 15000000
 00007598: 01000000
 0000759c: 00000000
 000075a0: 02002000
 000075a4: 55550044
 000075a8: 44004444
 000075ac: 02203c00
 000075b0: 01230044
 000075b4: 44004444
 000075b8: 00000000
 000075bc: 00000000
 000075c0: 00000000
 000075c4: 00000000
 000075c8: 00000000
 000075cc: 7f1c000b
 000075d0: 44aefc00
 000075d4: 44833c00
 000075d8: 3edd0d79
 000075dc: 00000000
 000075e0: be000000
 000075e4: 44833c00
 000075e8: 3edd0d79
 000075ec: 3f447dc1
 000075f0: be000000
 000075f4: be000000
 000075f8: 00000000
 000075fc: 3f447dc1
 00007600: 02000011
 00007604: 00000000
Ring end
space: 30196 wanted 131064

Fatal server error:
lockup

Tags: crash
Revision history for this message
lcampagn (luke-campagnola) wrote :

My hardware:
VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03)

Revision history for this message
lcampagn (luke-campagnola) wrote :

I have tracked down the source of this problem: I have a line in my xorg.conf "Virtual 2432 1824" which is required to support specific dual-headed configurations. Rotation works normally if I comment this line out, however this is not really an acceptable solution since the default Virtual size is too small.

Revision history for this message
Cesk (ercesk) wrote :

I have a similar problem with "Intel Corporation Integrated Graphics Controller". In my case after rotation the screen is not resized and xsevers lock up. Commenting "Virtual 1600 1200" in my xorg.conf DIDN'T solve the problem.

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

Sounds similar to bug 176061, however it's not a dupe since that one results in a screen blank but not a crash.

From the log, the key error message seems to be:

(EE) intel(0): Cannot support DRI with frame buffer width > 2048.

Could you see if disabling DRI makes the issue go away (and allows you to use Virtual widths?

Cesk, I suspect your issue may be unrelated, although since you've provided no log files it's impossible to say. Check your Xorg.0.log to see if you have the above error message; if not, then you are not seeing this particular bug and should report it separately. Look at bug 176061 to see if your issue is a match to that one; if not please report a new bug, and attach files as indicated by http://wiki.ubuntu.com/X/Debugging.

Changed in xserver-xorg-video-intel:
status: New → Confirmed
Bryce Harrington (bryce)
Changed in xserver-xorg-video-intel:
importance: Undecided → High
unggnu (unggnu)
Changed in xserver-xorg-video-intel:
status: Confirmed → Incomplete
Revision history for this message
unggnu (unggnu) wrote :

The Hardy Heron Alpha series is currently under development and contains an updated version of the -intel driver. You can download and try the new Hardy Heron Alpha release from http://cdimage.ubuntu.com/releases/hardy/ . You should be able to test the new -intel driver using the LiveCD. If you can, please verify if this bug still exists or not and report back your results. General information regarding the release can also be found here: http://www.ubuntu.com/testing/ .
Thanks.

Revision history for this message
lcampagn (luke-campagnola) wrote :

Problem still exists in latest Hardy. I have attached a full backtrace that I collected with GDB over the network, not sure if it will be useful. There is also a second backtrace included that shows what happens after I try to start up Xorg after the crash.

I noticed a message in the Xorg log:
  (EE) intel(0): Cannot support DRI with frame buffer width > 2048
So I reduced my virtual resolution to 2048x1824, and this is sufficient to prevent the crash. This is not enough resolution, however, to fit two screens side-by-side. Is the 2048 limitation in the hardware or the driver?

lspci has this to say about my video card:

00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03) (prog-if 00 [VGA controller])
        Subsystem: Lenovo ThinkPad T60/R60 series
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 0
        Interrupt: pin A routed to IRQ 20
        Region 0: Memory at ee100000 (32-bit, non-prefetchable) [size=512K]
        Region 1: I/O ports at 1800 [size=8]
        Region 2: Memory at d0000000 (32-bit, prefetchable) [size=256M]
        Region 3: Memory at ee200000 (32-bit, non-prefetchable) [size=256K]
        Capabilities: [90] Message Signalled Interrupts: Mask- 64bit- Queue=0/0 Enable-
                Address: 00000000 Data: 0000
        Capabilities: [d0] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03)
        Subsystem: Lenovo ThinkPad T60/R60 series
        Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Region 0: Memory at ee180000 (32-bit, non-prefetchable) [size=512K]
        Capabilities: [d0] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

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

Hi, I've forwarded your bug upstream to Xorg for their assistance with this issue. Would you mind please subscribing to the upstream bug report in case they have questions or need you to test something? Then you can provide the info directly without me slowing down the process.

Thanks for posting the backtrace, however unfortunately it was generated without the debug symbols, which upstream may be asking for. While we wait for their response, would you mind please installing the debug symbols for xserver and the -intel driver, reproduce the crash, and collecting another full backtrace? This may help them in pinpointing exactly where the crash occurs. Thanks ahead of time!

Changed in xserver-xorg-video-intel:
importance: Undecided → Unknown
status: New → Unknown
status: Incomplete → Triaged
Changed in xserver-xorg-video-intel:
status: Unknown → Confirmed
Revision history for this message
Bryce Harrington (bryce) wrote :

lcampagn, can you please attach your /var/log/Xorg.0.log?

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

lcampagn, upstream posted a patch for this issue: https://bugs.freedesktop.org/attachment.cgi?id=15981

Please build -intel with this patch and let us know if it solves the problem.

Changed in xserver-xorg-video-intel:
assignee: nobody → bryceharrington
status: Triaged → In Progress
Changed in xserver-xorg-video-intel:
status: Confirmed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (4.2 KiB)

This bug was fixed in the package xserver-xorg-video-intel - 2:2.2.1-2ubuntu1

---------------
xserver-xorg-video-intel (2:2.2.1-2ubuntu1) intrepid; urgency=low

  * Merge from debian unstable, remaining changes:
    - debian/patches
      + 01_fix_compiz_video.diff:
        use xf86XVFillKeyHelperDrawable() to fix video playback with
        compositing enabled.
      + 03_dell_1535_quirk.diff:
        Add a quirk for Dell Inspiron 1535 so it does not configure
        against the HDMI port instead of the LCD's native resolution
        (LP: 187860).
      + 04_dell_1735_quirk.diff:
        Another HDMI port quirk, for the Dell Inspiron 1735.
        (LP: 188204)
      + 05_intel_exa_force_greedy.patch:
        Force use of greedy mode on i965 hardware.
        (LP: 177492, 148247, 152206)
      + 08_945gm_quirk.diff:
        Adds quirk for another laptop model with a tv out detection bug.
        (LP: 152416)
      + 10_hw_overlay.diff:
        Replace explicit checks for G965 for having no overlay since it
        has one, with general check for future chips that may have no
        overlay. (LP: 201596, 152206)
      + 11_hw_overlay_option.diff:
        Add a Boolean "TexturedVideo" option with default 'true' value
        to be able to turn textured video off.
        (LP: 201596, 152206)
      + 12_quirk_sync.patch: Add some quirks from current git
        upstream, and a quirk for Dell Latitude D630 (LP: 197740)
      + 13_dpms_low_power_overlay.patch:
        Fix crash triggered by dpms low power mode with hardware overlay
        running (LP: 160309)
      + 14_sysfs_fujitsu_backlight.patch:
        Add sysfs backlight support for Fujitsu laptops (LP: 197620)
      + 15_quirk_sony_vaio_vgn-sz4mn.patch:
        Another Pipe A quirk - not already included - for the Sony Vaio
        VGN-SZ4MN. (LP: 212163)
      + 16_legacy_backlight_blc_pwn_ctl.patch:
        Fixes issue where gdm, opengl apps, and vlc resets brightness to
        xbacklight value on i915, by switching from BCM_LEGACY to
        BCM_COMBO. (LP: 201933)
      + 17_lockup_virtual_size_2048.patch:
        Fixes crash if Virtual set to >2048 by disabling DRI in this case,
        prior to initializing the DRI subsystem. (LP: 188178)
    - debian/control:
      + Change the maintainer address.
      + Add lpia to the list of architectures.
      + Nuke Conflicts and Replaces related to -i810.
      + Nuke /usr/lib/xorg/modules/drivers/i810_drv.so symlink
      + Nuke /usr/share/man/man4/i810.4 conflict
      + Don't conflict with 915resolution, since it breaks upgrades
        where people are still using i810 with widescreen resolutions.
        (LP: 206167)
    - debian/rules:
      + Don't build the intel_reg_dumper tool, since libpciaccess is in
        universe.
      + Allow xserver-xorg-video-i810 and xserver-xorg-video-intel to
        coexist until -intel is able to replace it completely.
  * debian/patches/18_quirks.patch:
    - Add quirks for pipe A and tv output bugs.
      (Closes LP: #204603, #216490, #201257, #224102)
  * debian/patches/19_check_exa_pitch_to_fix_rotate_crash.patch:
    - Fixes crash on xrandr rotation by checking EXA pitch size.
      EXA w...

Read more...

Changed in xserver-xorg-video-intel:
status: In Progress → 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.