[Intel-gfx] Suspend/resume problems on Broadwell

phoebe at quasiparticle.net phoebe at quasiparticle.net
Thu Feb 26 11:00:04 PST 2015


Hi,

I'm having a few problems with i915 on my Broadwell Thinkpad
(T450s, i7-5600U), apparently suspend/resume related.

During every suspend/resume cycle, I see this in my kernel log after
wakeup:

Freezing user space processes ... (elapsed 0.001 seconds) done.
Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
PM: Entering mem sleep
Suspending console(s) (use no_console_suspend to debug)
sd 0:0:0:0: [sda] Synchronizing SCSI cache
sd 0:0:0:0: [sda] Stopping disk
e1000e: EEE TX LPI TIMER: 00000011
[drm:stop_ring] *ERROR* render ring : timed out trying to stop ring

I also get a lot of these at random times, and during glxgears once for
every frame presented. I'm assuming it's for every GL frame, but I've
only confirmed that for glxgears:

[drm:hsw_unclaimed_reg_detect.isra.11 [i915]] *ERROR* Unclaimed
register detected. Please use the i915.mmio_debug=1 to debug this
problem.

With mmio_debug, I get these:

WARNING: CPU: 0 PID: 360 at drivers/gpu/drm/i915/intel_uncore.c:726
hsw_unclaimed_reg_debug+0x7d/0xa0() Unclaimed register detected before
writing to register 0x44404 CPU: 0 PID: 360 Comm: Xorg Tainted:
G        W      3.19.0 #1 Hardware name: LENOVO 20BWS03F00/20BWS03F00,
BIOS JBET39WW (1.04 ) 12/09/2014 0000000000000000 0000000070c52c75
ffff88032d8a3b18 ffffffff819f0e8b 0000000000000007 ffff88032d8a3b70
ffff88032d8a3b58 ffffffff810c7205 0000000000000246 ffff88032cd00000
0000000000044404 0000000000044404 Call Trace:
 [<ffffffff819f0e8b>] dump_stack+0x4c/0x6e
 [<ffffffff810c7205>] warn_slowpath_common+0x85/0xc0
 [<ffffffff810c72c5>] warn_slowpath_fmt+0x55/0x70
 [<ffffffff81524d8d>] hsw_unclaimed_reg_debug+0x7d/0xa0
 [<ffffffff8152ac48>] gen8_write32+0x58/0x1a0
 [<ffffffff8150f55b>] gen8_enable_vblank+0x6b/0xa0
 [<ffffffff814bbd2d>] drm_vblank_enable+0x8d/0x100
 [<ffffffff814bcb4b>] drm_vblank_get+0xab/0xe0
 [<ffffffff814bd442>] drm_wait_vblank+0x92/0x620
 [<ffffffff81500d8c>] ? i915_gem_retire_requests_ring+0x3c/0x180
 [<ffffffff814bb1af>] drm_ioctl+0x1df/0x680
 [<ffffffff8112fb5c>] ? __hrtimer_start_range_ns+0x2fc/0x410
 [<ffffffff81225c88>] do_vfs_ioctl+0x2f8/0x500
 [<ffffffff812302e2>] ? __fget+0x72/0xb0
 [<ffffffff81225f11>] SyS_ioctl+0x81/0xa0
 [<ffffffff819f9312>] system_call_fastpath+0x12/0x17

About every one in three suspend/resume cycles, X graphics are almost
completely broken after resume. Window decorations are still drawn
(mostly, anyway), but window contents are mostly absent. What survived
the cycle is killed off entirely by redraw events. Restarting
everything X doesn't work, virtual terminals work fine.

Also, it seems that running or having run a GL application has some
impact on this. With an instance of glxgears running during
suspend/resume, this doesn't seem to happen. Moreover, running a GL app
seems to fix the problem.

Is this known already, or can I somehow help to fix this?


Greetings,
Phoebe


More information about the Intel-gfx mailing list