i915kms temporary hang and screen freeze while playing games/openarena

Arto Pekkanen isoa at kapsi.fi
Mon Oct 12 20:39:58 UTC 2015


While playing games/openarena, sometimes the screen freezes for a few 
seconds, and I get the following error in dmesg:
error: [drm:pid12:i915_hangcheck_ring_idle] *ERROR* Hangcheck timer 
elapsed... blitter ring idle

I wanted to make a PR with useful dmesg output, so I enabled DRM2 debug 
output with drm.debug=2 in /boot/loader.conf and rebooted.

But after I enabled the drm.debug=2 the game does not seem freeze 
anymore, and there are no errors in dmesg. I cannot reproduce the issue 
with drm.debug=2. Perhaps the debug mode somehow keeps the "blitter 
ring" running so that the hangcheck timer never elapses.

Anyway, I've no idea how this DRM2 stuff works. However, I assume that 
this "blitter ring" is some thread that feeds the GPU with data to 
render (blit) onto screen. If the hangcheck timer elapses, that would 
mean that the "blitter ring" thread was sleeping (ie. not feeding data 
to GPU) even if there was data queued, the timed hangcheck detected this 
and woke up the thread. This is just an assumption made merely with 
grammatical analysis and total ignorance of the actual facts.

# uname -a
FreeBSD leno 10.2-RELEASE FreeBSD 10.2-RELEASE #0 r286666: Wed Aug 12 
15:26:37 UTC 2015     
root at releng1.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64

Hardware: Thinkpad T430, dual-core Intel i5 (4 threads), Ivy Bridge, 
Intel HD4000 -GPU

Is there anything I could do to help get this bug corrected?

-- 
Arto Pekkanen



More information about the freebsd-x11 mailing list