From: Mika Kuoppala Date: Wed, 12 Jun 2013 12:13:20 +0000 (+0300) Subject: drm/i915: find guilty batch buffer on ring resets X-Git-Tag: v3.11-rc1~65^2~61^2~8 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=aa60c664e6df502578454621c3a9b1f087ff8d25;p=pandora-kernel.git drm/i915: find guilty batch buffer on ring resets After hang check timer has declared gpu to be hung, rings are reset. In ring reset, when clearing request list, do post mortem analysis to find out the guilty batch buffer. Select requests for further analysis by inspecting the completed sequence number which has been updated into the HWS page. If request was completed, it can't be related to the hang. For noncompleted requests mark the batch as guilty if the ring was not waiting and the ring head was stuck inside the buffer object or in the flush region right after the batch. For everything else, mark them as innocents. v2: Fixed a typo in commit message (Ville Syrjälä) v3: - more descriptive function parameters (Chris Wilson) - use masked head address when inspecting if request is in ring - s/hangcheck.last_action/hangcheck.action - added comment about unmasked head hitting batch_obj range Reviewed-by: Chris Wilson Signed-off-by: Mika Kuoppala Acked-by: Ben Widawsky Signed-off-by: Daniel Vetter --- Reading git-diff-tree failed