Bug 23362

Summary: 915gm freeze after suspend (attached batch buffer dump)
Product: xorg Reporter: Milan Bouchet-Valat <nalimilan>
Component: Driver/intelAssignee: ykzhao <yakui.zhao>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: major    
Priority: medium CC: daveswen, mat
Version: gitKeywords: NEEDINFO
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Batch buffer dump and various logs
none
dmesg after trying the custom suspend method none

Description Milan Bouchet-Valat 2009-08-17 02:46:57 UTC
Created attachment 28698 [details]
Batch buffer dump and various logs

For more than two months, I've been experiencing a freeze a few minutes after suspending and hibernating. See attached batch buffer dump and logs for details.

Now using Ubuntu Jaunty, development drivers 2:2.8.0+git20090814.926c7e7d-0ubuntu0sarvatt~jaunty and kernel 2.6.31rc4.

Display controller [0380]: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller [8086:2792] (rev 03)
Comment 1 Wang Zhenyu 2009-08-19 20:12:42 UTC
Could you try the test patch on https://bugs.freedesktop.org/attachment.cgi?id=28805?
Comment 2 Milan Bouchet-Valat 2009-08-28 14:41:33 UTC
I've just tried the suggested fix, and it did not fix the freeze. Sorry!
Comment 3 ykzhao 2009-08-31 00:06:54 UTC
Will you please try the latest Eric's drm-intel-next tree and see whether the issue still exists when the box is booted with KMS enabled?

Will you please also do the following test under the console mode?
    1. kill the process which is using /proc/acpi/event
    2. echo mem > /sys/power/state; dmesg >dmesg_after; sync;
    3. press the power button and see whether the box can be resumed.
    4. if the box can be resumed, please check whether the system can be used.
 
Thanks.
Comment 4 Milan Bouchet-Valat 2009-09-01 04:35:29 UTC
Attached is the dmesg_after from the test you asked me to do. This is under the mainline kernel, still. So far, it seems that your method fixed the freeze (after more than one hour running). Great!

I'm currently building the drm-intel-next branch.
Comment 5 Milan Bouchet-Valat 2009-09-01 04:36:50 UTC
Created attachment 29064 [details]
dmesg after trying the custom suspend method
Comment 6 Milan Bouchet-Valat 2009-09-01 04:57:46 UTC
Sorry, actually the freeze has just happened now - very hard to predict. So your test does not fix it, which is quite logical... I'll try the drm-intel-next branch.
Comment 7 Milan Bouchet-Valat 2009-09-01 08:25:09 UTC
...and the drm-intel-next does not fix it either!
Comment 8 ykzhao 2009-09-14 23:11:24 UTC
(In reply to comment #7)
> ...and the drm-intel-next does not fix it either!
> 
Does it still freeze after suspend if you do the test under console mode?
thanks.

Comment 9 Milan Bouchet-Valat 2009-09-15 10:56:58 UTC
(In reply to comment #8)
> Does it still freeze after suspend if you do the test under console mode?
> thanks.
I've done the test from the console, and let my computer run under X for about two hours, and so far no freez (even with glxgears running to create some activity)e. Though, the display is updated very slowly, it is barely usable (that may be because I'm using GNOME Shell with Clutter window management, I suspect killing ACPI may have broken something).


Is that information of any value to you?
Comment 10 ykzhao 2009-09-15 23:37:56 UTC
Will you please try the following patch from Chris Wilson and see whether the issue still exists?
  Patch: drm/i915: Check that the relocation points to within the target
   http://lists.freedesktop.org/archives/intel-gfx/2009-September/004243.html

thanks.
Comment 11 Milan Bouchet-Valat 2009-09-21 06:22:53 UTC
Sorry, it still does not fix the freeze...

BTW, does the following extract (that I'm still seeing) from dmesg mean anything to you?

[  517.223316] i915 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[  517.223326] i915 0000:00:02.0: setting latency timer to 64
[  517.223805] render error detected, EIR: 0x00000010
[  517.223809] page table error
[  517.223813]   PGTBL_ER: 0x00000003
[  517.223819] [drm:i915_driver_irq_handler] *ERROR* EIR stuck: 0x00000010, masking
[  517.223835] render error detected, EIR: 0x00000010
[  517.223838] page table error
[  517.223841]   PGTBL_ER: 0x00000003
[  517.284898] [drm] LVDS-8: set mode 1024x768 17
Comment 12 Milan Bouchet-Valat 2009-09-29 05:37:12 UTC
FWIW, I'm still seeing the freeze under Ubuntu 9.10, and the error message is still here too.
Comment 13 Milan Bouchet-Valat 2009-10-18 07:04:06 UTC
I can confirm the bug with kernel 2.6.32rc5 again... The same error is displayed, the only difference is that during the freeze, I can switch to/from the console, which still works. But restarting X does not solve the problem: I'm getting a black screen.

Please, would somebody help me to debug that? I thought buying Intel hardware guaranteed me that I'd be able to help fixing bugs that affect me, contrary to closed source drivers. But I've been experiencing this freeze for more than 6 months!
Comment 14 Chris Wilson 2010-02-23 03:45:48 UTC
The error message will have been cleared up by:
commit fd2e8ea597222b8f38ae8948776a61ea7958232e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Tue Feb 9 14:14:36 2010 +0000

    drm/i915: Increase fb alignment to 64k
    
    An untiled framebuffer must be aligned to 64k. This is normally handled
    by intel_pin_and_fence_fb_obj(), but the intelfb_create() likes to be
    different and do the pinning itself. However, it aligns the buffer
    object incorrectly for pre-i965 chipsets causing a PGTBL_ERR when it is
    installed onto the output.
    
    Fixes:
      KMS error message while initializing modesetting -
      render error detected: EIR: 0x10 [i915]
      http://bugs.freedesktop.org/show_bug.cgi?id=22936
    
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: stable@kernel.org
    Signed-off-by: Eric Anholt <eric@anholt.net>

And there is a good possibility that this also caused the gpu hang. Can you please retest and reopen if the hang is still occurring.
Comment 15 Milan Bouchet-Valat 2010-03-09 02:44:27 UTC
Thanks for trying, but that doesn't seem to have fixed the problem. At least, thanks to Bug 15187 being fixed, some warnings are gone. The freeze doesn't occur now, X crashes. So I've opened Bug 26974 to tackle this from scratch, since things seem to have changed a bit.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.