Bug 15187

Summary: [i915] "render error detected, EIR: 0x00000010", possibly leading to freezes after suspend
Product: Drivers Reporter: Milan Bouchet-Valat (nalimilan)
Component: Video(DRI - Intel)Assignee: Jesse Barnes (jbarnes)
Status: RESOLVED CODE_FIX    
Severity: normal CC: akpm, anomalyst, jbarnes, robert.de.rooy
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.33rc6 Subsystem:
Regression: Yes Bisected commit-id:
Attachments: dmesg.log with kernel 2.6.33rc6

Description Milan Bouchet-Valat 2010-01-31 12:01:44 UTC
Created attachment 24819 [details]
dmesg.log with kernel 2.6.33rc6

Since at least kernel 2.6.31, I've been seeing an error message on every boot. Also, I can't suspend anymore my laptop because I always end with an X freeze, after a few minutes or a few hours (reported to X.org as [1]). This used to work in 2008. I'm not sure this is related at all, but the error looks serious enough to deserve a fix, even if it's to hide it! ;-)

I'm using kernel 2.6.33rc6 on Ubuntu Karmic, with an Intel i915 graphics card (see output of lspci -vnn below). Please just ask if you need more informations. Thanks!

1: http://bugs.freedesktop.org/show_bug.cgi?id=23362

Excerpt of dmesg (see attached for full log):
[    1.672329] [drm] Initialized drm 1.1.0 20060810
[    1.679888] ohci1394 0000:06:04.2: PCI INT C -> GSI 18 (level, low) -> IRQ 18
[    1.712391] i915 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[    1.712400] i915 0000:00:02.0: setting latency timer to 64
[    1.716834] [drm] set up 7M of stolen space
[    1.736070] ohci1394: fw-host0: OHCI-1394 1.1 (PCI): IRQ=[18]  MMIO=[b8008000-b80087ff]  Max Packet=[2048]  IR/IT contexts=[4/8]
[    1.842591] [drm] initialized overlay support
[    2.657547] fb0: inteldrmfb frame buffer device
[    2.657552] registered panic notifier
[    2.657571] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0
[    2.760156] render error detected, EIR: 0x00000010
[    2.760159] page table error
[    2.760161]   PGTBL_ER: 0x00000010
[    2.760164] [drm:i915_handle_error] *ERROR* EIR stuck: 0x00000010, masking
[    2.760175] render error detected, EIR: 0x00000010
[    2.760177] page table error
[    2.760178]   PGTBL_ER: 0x00000010
[    2.791522] Console: switching to colour frame buffer device 128x48

Relevant output of 'lspci -vnn':
00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller [8086:2592] (rev 03)
        Subsystem: Toshiba America Info Systems Device [1179:ff00]
        Flags: bus master, fast devsel, latency 0, IRQ 16
        Memory at b0080000 (32-bit, non-prefetchable) [size=512K]
        I/O ports at 1800 [size=8]
        Memory at c0000000 (32-bit, prefetchable) [size=256M]
        Memory at b0000000 (32-bit, non-prefetchable) [size=256K]
        Capabilities: [d0] Power Management version 2
        Kernel driver in use: i915
        Kernel modules: i915

00:02.1 Display controller [0380]: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller [8086:2792] (rev 03)
        Subsystem: Toshiba America Info Systems Device [1179:ff00]
        Flags: fast devsel
        Memory at 64000000 (32-bit, non-prefetchable) [disabled] [size=5
Comment 1 Andrew Morton 2010-02-01 21:00:03 UTC
Thanks.  I marked this as a regression.
Comment 2 Robert.Strickler 2010-02-05 17:27:26 UTC
I get the same error on an EEE 701 with Ubuntu Lucid 2.6.32.10
another bug reports suggest a nomodeset can help [http://ubuntuforums.org/showthread.php?t=1357315]. I will try to post dmesg results after I get home and get access to the machine.
Comment 3 Robert de Rooy 2010-02-15 10:18:17 UTC
I am seeing similar errors after booting F12 on a ThinkPad X40 running kernel-2.6.31.12-174.2.19.fc12.i686. The system does continue afterwards.

[drm] Initialized drm 1.1.0 20060810
i915 0000:00:02.0: power state changed by ACPI to D0
i915 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
i915 0000:00:02.0: setting latency timer to 64
[drm] DAC-6: set mode 640x480 0
fbcon: inteldrmfb (fb0) is primary device
[drm:i915_handle_error] *ERROR* EIR stuck: 0x00000010, masking
[drm] LVDS-8: set mode 1024x768 d
fb0: inteldrmfb frame buffer device
[drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm:drm_mode_rmfb] *ERROR* tried to remove a fb that we didn't own
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0
[drm] DAC-6: set mode 640x480 0

00:02.0 VGA compatible controller [0300]: Intel Corporation 82852/855GM Integrated Graphics Device [8086:3582] (rev 02) (prog-if 00 [VGA controller])
	Subsystem: IBM Device [1014:0557]
	Flags: bus master, fast devsel, latency 0, IRQ 16
	Memory at e0000000 (32-bit, prefetchable) [size=128M]
	Memory at d0000000 (32-bit, non-prefetchable) [size=512K]
	I/O ports at 1800 [size=8]
	Expansion ROM at <unassigned> [disabled]
	Capabilities: <access denied>
	Kernel driver in use: i915
	Kernel modules: i915
Comment 4 Jesse Barnes 2010-02-19 20:33:15 UTC
These errors should be fixed now; turned out to be a bad alignment in our framebuffer code.
Comment 5 Jesse Barnes 2010-02-19 20:37:05 UTC
If you still see hangs with the drm-intel-next intel branch, please open a new bug since this particular one should be fixed now (the EIR errors on load).
Comment 6 Milan Bouchet-Valat 2010-03-09 10:42:13 UTC
Nice, drm-intel-next indeed fixes the warnings. But the freeze after suspend has now become a crash. I've opened Bug 26974 to track this. Thanks!