[i915] xserver freeze on switching VGA1/LVDS1
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
xserver-xorg-video-intel (Fedora) |
New
|
Undecided
|
Unassigned | ||
xserver-xorg-video-intel (Ubuntu) |
Fix Released
|
Undecided
|
Timo Aaltonen | ||
Precise |
Fix Released
|
Undecided
|
Timo Aaltonen |
Bug Description
I can easily freeze xserver on my Asus F80L laptop
with just installed Ubuntu 12.04
when the external monitor (LG L2000CP) is connected:
xrandr --output LVDS1 --off --output VGA1 --auto
xrandr --output VGA1 --off --output LVDS1 --auto
xrandr --output LVDS1 --off --output VGA1 --auto
Here the both screens are dark, so I have to switch
to a console and back (Ctrl+Alt+F1, Ctrl-Alt+F7).
No errors in Xorg.0.log and /sys/kernel/
but a new line in dmesg:
[ 1564.394016] [drm:drm_
Before the next command I run a script which collects some info a minute later
xrandr --output VGA1 --off --output LVDS1 --auto
The both screens become dark again, but now the keyboard does not work
(except magic SysRq keys).
i915_error_state:
no error state collected
Xorg.0.log last lines:
[ 199.873] (II) intel(0): Allocated new frame buffer 1280x800 stride 5120, tiled
[ 199.943] (WW) intel(0): I830DRI2Schedul
[ 199.951] (WW) intel(0): I830DRI2GetMSC:1305 get vblank counter failed: Invalid argument
[ 199.972] (WW) intel(0): I830DRI2GetMSC:1305 get vblank counter failed: Invalid argument
[ 200.227] (WW) intel(0): I830DRI2GetMSC:1305 get vblank counter failed: Invalid argument
[ 200.320] (WW) intel(0): I830DRI2GetMSC:1305 get vblank counter failed: Invalid argument
[ 200.320] (WW) intel(0): first get vblank counter failed: Invalid argument
[ 200.328] (WW) intel(0): I830DRI2GetMSC:1305 get vblank counter failed: Invalid argument
[ 200.328] (WW) intel(0): first get vblank counter failed: Invalid argument
dmesg last lines
[ 1564.394016] [drm:drm_
[ 1698.464156] [drm:i915_
[ 1698.464167] [drm:kick_ring] *ERROR* Kicking stuck wait on render ring
[ 1699.968169] [drm:i915_
[ 1699.968180] [drm:kick_ring] *ERROR* Kicking stuck wait on render ring
[ 1701.472155] [drm:i915_
[ 1701.472163] [drm:kick_ring] *ERROR* Kicking stuck wait on render ring
(many times)
System info:
Asus F80L laptop
lsb_release -rd
Description: Ubuntu 12.04 LTS
Release: 12.04
uname -a
Linux dfb 3.2.0-24-
lspci:
00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (primary) (rev 03)
00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (secondary) (rev 03)
00:1a.0 USB controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #4 (rev 04)
00:1a.1 USB controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 04)
00:1a.7 USB controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 04)
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 04)
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 04)
00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 04)
00:1c.3 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 4 (rev 04)
00:1d.0 USB controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 04)
00:1d.1 USB controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 04)
00:1d.2 USB controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 04)
00:1d.7 USB controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 04)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f4)
00:1f.0 ISA bridge: Intel Corporation 82801HM (ICH8M) LPC Interface Controller (rev 04)
00:1f.1 IDE interface: Intel Corporation 82801HM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] (rev 04)
01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 01)
02:00.0 Network controller: Atheros Communications Inc. AR928X Wireless Network Adapter (PCI-Express) (rev 01)
xrandr
Screen 0: minimum 320 x 200, current 2880 x 1200, maximum 8192 x 8192
LVDS1 connected 1280x800+0+0 (normal left inverted right x axis y axis) 304mm x 190mm
1280x800 60.0*+
1024x768 60.0
800x600 60.3 56.2
640x480 59.9
VGA1 connected 1600x1200+1280+0 (normal left inverted right x axis y axis) 408mm x 306mm
1600x1200 59.8*+
1280x1024 75.0 60.0
1152x864 75.0
1024x768 85.0 75.1 60.0
832x624 74.6
800x600 85.1 75.0 60.3
640x480 75.0 60.0 59.9
720x400 70.1
Full dmesg and Xorg logs are attached.
Related branches
tags: | added: freeze |
tags: | added: precise |
tags: |
added: verification-done removed: verification-needed |
I can add more info.
1. I can not reproduce freeze if I stop lightdm and launch just xterm
startx /usr/bin/startx
Although when I switch between LVDS1 and VGA1
xrandr --output LVDS1 --off --output VGA1 --auto
xrandr --output VGA1 --off --output LVDS1 --auto
approximately in a half of cases I get blank screen. I can restore the image by switching to a console [Ctrl+Alt+F1] and back.
I do not see any errors in dmesg or Xorg.0.log
2. I have not managed to reproduce freeze in unity-2d when only xterm is running. The problem with blank screen persists. After several switching I have noticed
[drm:drm_ mode_getfb] *ERROR* invalid framebuffer id
in dmesg output. More switching leads to more such lines.
At certain moment
xrandr --output VGA1 --off --output LVDS1 --auto
failed with the following error:
xrandr: cannot find crtc for output LVDS1
Nothing unusual in xrandr output:
xrandr
Screen 0: minimum 320 x 200, current 1600 x 1200, maximum 8192 x 8192
LVDS1 connected (normal left inverted right x axis y axis)
1280x800 60.0 +
1024x768 60.0
800x600 60.3 56.2
640x480 59.9
VGA1 connected 1600x1200+0+0 (normal left inverted right x axis y axis) 408mm x 306mm
1600x1200 59.8*+
1280x1024 75.0 60.0
1152x864 75.0
1024x768 85.0 75.1 60.0
832x624 74.6
800x600 85.1 75.0 60.3
640x480 75.0 60.0 59.9
720x400 70.1
Surprisingly [Fn+F6] switched image to internal screen and xrandr started to work again.
I am afraid that some applications will be able to freeze X server even when unity-2d is running.