Hi Keith,
I just upgraded my wife's computer with a new motherboard which has a (lspci -vv):
Intel Corporation Sandy Bridge Integrated Graphics Controller (rev 09) (prog-if 00 [VGA controller]) Subsystem: ASUSTeK Computer Inc. Device 844d Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 45 Region 0: Memory at fe000000 (64-bit, non-prefetchable) [size=4M] Region 2: Memory at c0000000 (64-bit, prefetchable) [size=256M] Region 4: I/O ports at f000 [size=64] Expansion ROM at <unassigned> [disabled] Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit- Address: fee0200c Data: 4191 Capabilities: [d0] Power Management version 2 Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Capabilities: [a4] PCI Advanced Features AFCap: TP+ FLR+ AFCtrl: FLR- AFStatus: TP- Kernel driver in use: i915
With the standard F14 kernel, running any videos locked up the display. I upgraded her kernel to 3.0.6 and now display no longer locks up but the videos still do not play. Just sound, but the video is a blank screen. Here's some of the dmesg:
[ 1.777679] [drm] Initialized drm 1.1.0 20060810 [ 1.780689] i915 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 [ 1.780693] i915 0000:00:02.0: setting latency timer to 64 [ 1.810351] i915 0000:00:02.0: irq 45 for MSI/MSI-X [ 1.810355] [drm] Supports vblank timestamp caching Rev 1 (10.10.2010). [ 1.810356] [drm] Driver supports precise vblank timestamp query. [ 1.810383] vgaarb: device changed decodes: PCI:0000:00:02.0,olddecodes=io+mem,decodes=io+mem:owns=io+mem
[ 2.151171] input: Video Bus as /devices/LNXSYSTM:00/device:00/PNP0A08:00/LNXVIDEO:00/input/input2 [ 2.151197] ACPI: Video Device [GFX0] (multi-head: yes rom: no post: no) [ 2.151212] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0
[ 102.695526] [drm:i915_hangcheck_elapsed] *ERROR* Hangcheck timer elapsed... GPU hung [ 102.695538] [drm] capturing error event; look for more information in /debug/dri/0/i915_error_state [ 102.699680] [drm:i915_wait_request] *ERROR* i915_wait_request returns -11 (awaiting 1 at 0, next 2) [ 104.490507] ------------[ cut here ]------------ [ 104.490529] WARNING: at drivers/gpu/drm/i915/i915_drv.c:322 gen6_gt_force_wake_get+0x29/0x48 [i915]() [ 104.490533] Hardware name: System Product Name [ 104.490535] Modules linked in: vfat fat fuse nfs lockd fscache auth_rpcgss nfs_acl sunrpc cpufreq_ondemand acpi_cpufreq freq_table mperf ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 ip6table_filter ip6_tables ipv6 uinput snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_intel snd_hda_codec snd_hwdep snd_seq snd_seq_device snd_pcm ppdev iTCO_wdt parport_pc r8169 pcspkr serio_raw snd_timer snd soundcore snd_page_alloc parport i2c_i801 iTCO_vendor_support xhci_hcd mii microcode usblp joydev pata_acpi ata_generic pata_via wmi usb_storage i915 drm_kms_helper drm i2c_algo_bit i2c_core video [last unloaded: scsi_wait_scan] [ 104.490579] Pid: 0, comm: swapper Not tainted 3.0.6 #1 [ 104.490581] Call Trace: [ 104.490583] <IRQ> [<ffffffff8104a9de>] warn_slowpath_common+0x83/0x9b [ 104.490595] [<ffffffff8104aa10>] warn_slowpath_null+0x1a/0x1c [ 104.490605] [<ffffffffa006753a>] gen6_gt_force_wake_get+0x29/0x48 [i915] [ 104.490617] [<ffffffffa006afd9>] i915_read32+0x33/0x6b [i915] [ 104.490629] [<ffffffffa006dfdf>] i915_hangcheck_elapsed+0xbb/0x1eb [i915] [ 104.490634] [<ffffffff8105781d>] run_timer_softirq+0x19b/0x280 [ 104.490640] [<ffffffff8100e95d>] ? paravirt_read_tsc+0x9/0xd [ 104.490651] [<ffffffffa006df24>] ? i915_vblank_swap+0x10/0x10 [i915] [ 104.490657] [<ffffffff81050645>] __do_softirq+0xc9/0x1b5 [ 104.490661] [<ffffffff8100e95d>] ? paravirt_read_tsc+0x9/0xd [ 104.490665] [<ffffffff8147269c>] call_softirq+0x1c/0x30 [ 104.490669] [<ffffffff8100aba1>] do_softirq+0x46/0x81 [ 104.490673] [<ffffffff81050922>] irq_exit+0x52/0xaf [ 104.490677] [<ffffffff81472fb1>] smp_apic_timer_interrupt+0x7c/0x8a [ 104.490682] [<ffffffff81471e53>] apic_timer_interrupt+0x13/0x20 [ 104.490684] <EOI> [<ffffffff8100e95d>] ? paravirt_read_tsc+0x9/0xd [ 104.490692] [<ffffffff812664fc>] ? intel_idle+0xd8/0x100 [ 104.490696] [<ffffffff812664de>] ? intel_idle+0xba/0x100 [ 104.490700] [<ffffffff8138ad2d>] cpuidle_idle_call+0xd7/0x168 [ 104.490705] [<ffffffff81008307>] cpu_idle+0xa5/0xdf [ 104.490711] [<ffffffff81449b7e>] rest_init+0x72/0x74 [ 104.490716] [<ffffffff81b5ab8b>] start_kernel+0x3ca/0x3d5 [ 104.490720] [<ffffffff81b5a2c4>] x86_64_start_reservations+0xaf/0xb3 [ 104.490724] [<ffffffff81b5a140>] ? early_idt_handlers+0x140/0x140 [ 104.490728] [<ffffffff81b5a3ca>] x86_64_start_kernel+0x102/0x111 [ 104.490731] ---[ end trace 0adfc1fb6df717f1 ]--- [ 104.490735] ------------[ cut here ]------------
The warning is coming from:
void gen6_gt_force_wake_get(struct drm_i915_private *dev_priv) { WARN_ON(!mutex_is_locked(&dev_priv->dev->struct_mutex));
/* Forcewake is atomic in case we get in here without the lock */ if (atomic_add_return(1, &dev_priv->forcewake_count) == 1) __gen6_gt_force_wake_get(dev_priv); }
The mutex isn't locked.
For the full dmesg:
http://rostedt.homelinux.com/private/vid-crash/dmesg
For the /debug/drm directory:
http://rostedt.homelinux.com/private/vid-crash/debugfs-i915.tar.bz2
-- Steve
On Sun, 2011-10-16 at 14:01 -0400, Steven Rostedt wrote:
For the full dmesg:
Another clue that looks nasty is this line:
[ 0.427196] pci_root PNP0A08:00: address space collision: host bridge window [mem 0x000c8000-0x000dffff] conflicts with Video ROM [mem 0x000c0000-0x000cd7ff]
-- Steve
On Sun, 2011-10-16 at 14:01 -0400, Steven Rostedt wrote:
You can get the config from here:
http://rostedt.homelinux.com/private/vid-crash/config
-- Steve
On Sun, Oct 16, 2011 at 02:01:08PM -0400, Steven Rostedt wrote:
[ 102.695526] [drm:i915_hangcheck_elapsed] *ERROR* Hangcheck timer elapsed... GPU hung [ 102.695538] [drm] capturing error event; look for more information in /debug/dri/0/i915_error_state [ 102.699680] [drm:i915_wait_request] *ERROR* i915_wait_request returns -11 (awaiting 1 at 0, next 2)
Can you please attach i915_error_state? It contains the gpu crashdump we need to diagnose gpu hangs.
Thanks, Daniel
On Mon, 2011-10-17 at 10:55 +0200, Daniel Vetter wrote:
On Sun, Oct 16, 2011 at 02:01:08PM -0400, Steven Rostedt wrote:
[ 102.695526] [drm:i915_hangcheck_elapsed] *ERROR* Hangcheck timer elapsed... GPU hung [ 102.695538] [drm] capturing error event; look for more information in /debug/dri/0/i915_error_state [ 102.699680] [drm:i915_wait_request] *ERROR* i915_wait_request returns -11 (awaiting 1 at 0, next 2)
Can you please attach i915_error_state? It contains the gpu crashdump we need to diagnose gpu hangs.
As stated you can download the entire drm debug directory from here:
For the /debug/drm directory:
http://rostedt.homelinux.com/private/vid-crash/debugfs-i915.tar.bz2
But for your convenience I'm also attaching the error state file.
-- Steve
On Mon, Oct 17, 2011 at 07:40:27AM -0400, Steven Rostedt wrote:
On Mon, 2011-10-17 at 10:55 +0200, Daniel Vetter wrote:
On Sun, Oct 16, 2011 at 02:01:08PM -0400, Steven Rostedt wrote:
[ 102.695526] [drm:i915_hangcheck_elapsed] *ERROR* Hangcheck timer elapsed... GPU hung [ 102.695538] [drm] capturing error event; look for more information in /debug/dri/0/i915_error_state [ 102.699680] [drm:i915_wait_request] *ERROR* i915_wait_request returns -11 (awaiting 1 at 0, next 2)
Can you please attach i915_error_state? It contains the gpu crashdump we need to diagnose gpu hangs.
As stated you can download the entire drm debug directory from here:
Oops, sorry about missing that.
For the /debug/drm directory:
http://rostedt.homelinux.com/private/vid-crash/debugfs-i915.tar.bz2
But for your convenience I'm also attaching the error state file.
Thanks. Your userspace is issueing MI_WAIT_SCANLINES cmds to the gpu, which just doesn't work. Can you please upgrade xf86-video-intel to the latest released version and check whether it works.
Generally userspace with that bug is extremely old (and if the other things are equally outdated) rather buggy for Sandybridge. I highly suggest updating the entire graphics stack to something modern (Sandybridge-wise).
Yours, Daniel
On Mon, 2011-10-17 at 19:02 +0200, Daniel Vetter wrote:
Thanks. Your userspace is issueing MI_WAIT_SCANLINES cmds to the gpu, which just doesn't work. Can you please upgrade xf86-video-intel to the latest released version and check whether it works.
Generally userspace with that bug is extremely old (and if the other things are equally outdated) rather buggy for Sandybridge. I highly suggest updating the entire graphics stack to something modern (Sandybridge-wise).
Thanks for the quick response.
OK, I'll wait till after KS to do more on my wife's box. It is currently useable, and I hate to make it worse and leave her computer in a broken state ;)
It's running Fedora 14, and I rather avoid Gnome3 and systemd, which prevents me from moving her to Fedora 15. If F14 does not provide the necessary updates, I'll move her over to a Debian system.
Thanks!
-- Steve
On Mon, Oct 17, 2011 at 01:06:59PM -0400, Steven Rostedt wrote:
It's running Fedora 14, and I rather avoid Gnome3 and systemd, which prevents me from moving her to Fedora 15. If F14 does not provide the necessary updates, I'll move her over to a Debian system.
Generally we're (unfortunately) only now cracking down on a few long-standing Sandybdrige gpu hang issues, so you want something that tracks upstream (and sometimes even git master) pretty closely.
Cheers, Daniel
On Mon, 2011-10-17 at 19:52 +0200, Daniel Vetter wrote:
On Mon, Oct 17, 2011 at 01:06:59PM -0400, Steven Rostedt wrote:
It's running Fedora 14, and I rather avoid Gnome3 and systemd, which prevents me from moving her to Fedora 15. If F14 does not provide the necessary updates, I'll move her over to a Debian system.
Generally we're (unfortunately) only now cracking down on a few long-standing Sandybdrige gpu hang issues, so you want something that tracks upstream (and sometimes even git master) pretty closely.
What git tree is this? I could try it out.
-- Steve
On Mon, Oct 17, 2011 at 02:19:22PM -0400, Steven Rostedt wrote:
On Mon, 2011-10-17 at 19:52 +0200, Daniel Vetter wrote:
On Mon, Oct 17, 2011 at 01:06:59PM -0400, Steven Rostedt wrote:
It's running Fedora 14, and I rather avoid Gnome3 and systemd, which prevents me from moving her to Fedora 15. If F14 does not provide the necessary updates, I'll move her over to a Debian system.
Generally we're (unfortunately) only now cracking down on a few long-standing Sandybdrige gpu hang issues, so you want something that tracks upstream (and sometimes even git master) pretty closely.
What git tree is this? I could try it out.
Just for these fixes you'd need libdrm and xf86-video-intel. Git repos for these two:
git://anongit.freedesktop.org/git/xorg/driver/xf86-video-intel git://anongit.freedesktop.org/git/mesa/drm
See
http://intellinuxgraphics.org/download.html
for the entire stack.
Cheers, Daniel
dri-devel@lists.freedesktop.org