kernel: [154858.820009] [drm:i915_hangcheck_elapsed] *ERROR* Hangcheck timer elapsed.

Valdis.Kletnieks at vt.edu Valdis.Kletnieks at vt.edu
Mon Dec 15 16:11:55 EST 2014


On Mon, 15 Dec 2014 14:19:32 -0600, Chris said:
> On Mon, 2014-12-15 at 13:43 -0500, Valdis.Kletnieks at vt.edu wrote:

> > I'm pretty sure that's a timer for the i915 driver that detects if the
> > GPU has gone into an infinite loop due to (usually) buggy programming from
> > the operating system....
> 
> Thank you Valdis as far as the OS we're talking about Ubuntu not the
> bios correct?

More specifically, the i915 is actually a fully programmable CPU in its own
right, but it's a crazy morass of interrupts and circular buggers
and race conditions.  The operating system (Ubuntu or what have you) actually
send the i915 a program of what to display, and the i915 goes off and does it.
Of course, missing a single interrupt or an off-by-one error in a circular
buffer will cause the i915 to go off the rails and usually get hung in a hard
loop.

(It doesn't help that the i915 has a ton of wonky restrictions of the form "you
can do this during a vertical retrace period, but only during the first half
of a horizontal retrace".  And yes, I'm pretty sure it actually enforces
vertical and horizontal retrace timings on LCDs.  Silly, huh? ;)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 848 bytes
Desc: not available
Url : http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20141215/513309ed/attachment.bin 


More information about the Kernelnewbies mailing list