[Intel-gfx] Lockup when switching displays using xrandr since kernel 3.5.x

2012-10-16 Thread Thilo-Alexander Ginkel
Hi there,

since upgrading from kernel 3.4.10 to 3.5.x or 3.6.2 (on Kubuntu
12.04) I am getting sporadic (but frequent) lockups when switching
displays using xrandr:

/usr/bin/xrandr -d :0.0 --output LVDS1 --off --output HDMI3
--mode 1600x1200 --primary --auto
sleep 2
/usr/bin/xrandr -d :0.0 --output HDMI2 --mode 1600x1200
--right-of HDMI3 --auto

$ uname -a
Linux orion 3.6.2 #41 SMP Tue Oct 16 23:45:38 CEST 2012 x86_64 x86_64
x86_64 GNU/Linux

00:02.0 VGA compatible controller: Intel Corporation 2nd Generation
Core Processor Family Integrated Graphics Controller (rev 09) (prog-if
00 [VGA controller])
Subsystem: Lenovo Device 21d2
Flags: bus master, fast devsel, latency 0, IRQ 46
Memory at f000 (64-bit, non-prefetchable) [size=4M]
Memory at e000 (64-bit, prefetchable) [size=256M]
I/O ports at 4000 [size=64]
Expansion ROM at  [disabled]
Capabilities: 
Kernel driver in use: i915
Kernel modules: i915

When the lockup happens the local display is completely unresponsive,
but connecting via ssh shows the following stuck tasks:

[  479.796787] INFO: task kworker/2:2:360 blocked for more than 120 seconds.
[  479.796798] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs"
disables this message.
[  479.796803] kworker/2:2 D  0   360  2 0x
[  479.796815]  88020ffb7c30 0046 88020fcfa080
88020ffb7fd8
[  479.796825]  88020ffb7fd8 88020ffb7fd8 8802148c2080
88020fcfa080
[  479.796834]  88020fcfa790 8802024a 88020fcfa740
0002
[  479.796844] Call Trace:
[  479.796862]  [] ? mark_held_locks+0x61/0x140
[  479.796876]  [] ? mutex_lock_nested+0x1e5/0x320
[  479.796890]  [] schedule+0x24/0x70
[  479.796902]  [] schedule_preempt_disabled+0x9/0x10
[  479.796915]  [] mutex_lock_nested+0x151/0x320
[  479.796956]  [] ? output_poll_execute+0x51/0x1a0
[drm_kms_helper]
[  479.796973]  [] output_poll_execute+0x51/0x1a0
[drm_kms_helper]
[  479.796984]  [] process_one_work+0x18a/0x520
[  479.796992]  [] ? process_one_work+0x12e/0x520
[  479.797001]  [] ? do_raw_spin_lock+0x54/0x120
[  479.797016]  [] ?
drm_helper_connector_dpms+0x100/0x100 [drm_kms_helper]
[  479.797032]  [] worker_thread+0x18f/0x4f0
[  479.797039]  [] ? _raw_spin_unlock_irqrestore+0x3a/0x70
[  479.797047]  [] ? trace_hardirqs_on+0xd/0x10
[  479.797055]  [] ? rescuer_thread+0x290/0x290
[  479.797063]  [] kthread+0xa9/0xb0
[  479.797069]  [] ? trace_hardirqs_on+0xd/0x10
[  479.797078]  [] kernel_thread_helper+0x4/0x10
[  479.797085]  [] ? retint_restore_args+0x13/0x13
[  479.797092]  [] ? __init_kthread_worker+0x70/0x70
[  479.797098]  [] ? gs_change+0x13/0x13
[  479.797104] 3 locks held by kworker/2:2/360:
[  479.797107]  #0:  (events_nrt){.+.+.+}, at: []
process_one_work+0x12e/0x520
[  479.797125]  #1:
((&(&dev->mode_config.output_poll_work)->work)){+.+.+.}, at:
[] process_one_work+0x12e/0x520
[  479.797140]  #2:  (&dev->mode_config.mutex){+.+.+.}, at:
[] output_poll_execute+0x51/0x1a0 [drm_kms_helper]
[  479.797185] INFO: task Xorg:1759 blocked for more than 120 seconds.
[  479.797189] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs"
disables this message.
[  479.797192] XorgD  0  1759   1716 0x0044
[  479.797201]  880211091898 0046 880211999040
880211091fd8
[  479.797211]  880211091fd8 880211091fd8 8801dd9ea080
880211999040
[  479.797219]  880211999708 880211999040 0007
0006
[  479.797228] Call Trace:
[  479.797235]  [] ? mark_held_locks+0x61/0x140
[  479.797243]  [] ? _raw_spin_unlock_irqrestore+0x3a/0x70
[  479.797249]  [] ? trace_hardirqs_on_caller+0x10d/0x1a0
[  479.797256]  [] ? trace_hardirqs_on+0xd/0x10
[  479.797265]  [] schedule+0x24/0x70
[  479.797299]  []
intel_crtc_wait_for_pending_flips+0x6d/0xc0 [i915]
[  479.797307]  [] ? __init_waitqueue_head+0x60/0x60
[  479.797337]  [] ironlake_crtc_disable+0x4d/0x7a0 [i915]
[  479.797363]  [] ironlake_crtc_prepare+0x9/0x10 [i915]
[  479.797379]  []
drm_crtc_helper_set_mode+0x35e/0x520 [drm_kms_helper]
[  479.797403]  []
drm_crtc_helper_set_config+0x83d/0xaf0 [drm_kms_helper]
[  479.797440]  [] drm_mode_setcrtc+0x2ed/0x540 [drm]
[  479.797466]  [] drm_ioctl+0x47c/0x540 [drm]
[  479.797496]  [] ? drm_mode_setplane+0x3b0/0x3b0 [drm]
[  479.797504]  [] ? trace_hardirqs_on_caller+0x10d/0x1a0
[  479.797515]  [] do_vfs_ioctl+0x96/0x560
[  479.797524]  [] ? sysret_check+0x22/0x5d
[  479.797532]  [] sys_ioctl+0x91/0xa0
[  479.797541]  [] system_call_fastpath+0x16/0x1b
[  479.797546] 1 lock held by Xorg/1759:
[  479.797549]  #0:  (&dev->mode_config.mutex){+.+.+.}, at:
[] drm_mode_setcrtc+0x66/0x540 [drm]

dmesg: http://pastebin.com/p48xLmSc
lspci -vvv: http://pastebin.com/86RrRuKK
Xorg.log: http://pastebin.com/AvL7PC4U

Any ideas?

Thanks,
Thilo
___
Intel-gfx mailing list

Re: [Intel-gfx] Lockup when switching displays using xrandr since kernel 3.5.x

2012-10-18 Thread Thilo-Alexander Ginkel
On Wed, Oct 17, 2012 at 1:26 AM, Thilo-Alexander Ginkel
 wrote:
> since upgrading from kernel 3.4.10 to 3.5.x or 3.6.2 (on Kubuntu
> 12.04) I am getting sporadic (but frequent) lockups when switching
> displays using xrandr:
> [...]

BTW, the lockups also happen with i915.i915_enable_rc6=1 (instead of
the original i915.i915_enable_rc6=3).

Regards,
Thilo
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx