diff mbox

drm/i915: Don't initialize pipe config after choosing DPLLs.

Message ID 1415405270-8249-1-git-send-email-bob.j.paauwe@intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

Paauwe, Bob J Nov. 8, 2014, 12:07 a.m. UTC
The pipe config needs to be initialized before calling crtc_compute_clock
since this will update the new_config structure DPLL values. Initializing
the new_config structure after calling crtc_compute_clock can result in
incorrect timing values.

This regression was introduced in

commit 0dbdf89f27b17ae1eceed6782c2917f74cbb5d59
Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Date:   Wed Oct 29 11:32:33 2014 +0200

    drm/i915: Add infrastructure for choosing DPLLs before disabling crtcs

	and

	commit 00d958817dd3daaa452c221387ddaf23d1e4c06f
	Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
	Date:   Wed Oct 29 11:32:36 2014 +0200

	    drm/i915: Covert remaining platforms to choose DPLLS before disabling CRTCs

Signed-off-by: Bob Paauwe <bob.j.paauwe@intel.com>
CC: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
---
 drivers/gpu/drm/i915/intel_display.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

Comments

Shuang He Nov. 8, 2014, 8:55 a.m. UTC | #1
Tested-By: PRC QA PRTS (Patch Regression Test System Contact: shuang.he@intel.com)
-------------------------------------Summary-------------------------------------
Platform: baseline_drm_intel_nightly_pass_rate->patch_applied_pass_rate
BYT: pass/total=347/348->348/348
PNV: pass/total=326/328->328/328
ILK: pass/total=330/330->317/330
IVB: pass/total=538/546->458/546
SNB: pass/total=549/563->470/563
HSW: pass/total=565/576->483/576
BDW: pass/total=430/435->429/435
-------------------------------------Detailed-------------------------------------
test_platform: test_suite, test_case, result_with_drm_intel_nightly(count, machine_id...)...->result_with_patch_applied(count, machine_id)...
BYT: Intel_gpu_tools, igt_gem_concurrent_blit_prw-bcs-gpu-read-after-write-interruptible, DMESG_WARN(1, M36)PASS(3, M36) -> PASS(4, M36)
PNV: Intel_gpu_tools, igt_kms_setmode_invalid-clone-exclusive-crtc, DMESG_WARN(1, M25)PASS(3, M24) -> DMESG_WARN(3, M24)PASS(1, M24)
PNV: Intel_gpu_tools, igt_kms_setmode_invalid-clone-single-crtc, DMESG_WARN(1, M25)PASS(3, M24) -> DMESG_WARN(3, M24)PASS(1, M24)
ILK: Intel_gpu_tools, igt_gem_reset_stats_ban-render, PASS(4, M37M26) -> NO_RESULT(1, M26)PASS(3, M26)
ILK: Intel_gpu_tools, igt_kms_3d, DMESG_WARN(3, M26)PASS(1, M37) -> DMESG_WARN(1, M26)PASS(3, M26)
ILK: Intel_gpu_tools, igt_kms_flip_dpms-off-confusion, DMESG_WARN(3, M26)PASS(1, M37) -> DMESG_WARN(1, M26)PASS(3, M26)
ILK: Intel_gpu_tools, igt_kms_flip_flip-vs-expired-vblank, DMESG_WARN(3, M26)PASS(1, M37) -> DMESG_WARN(1, M26)PASS(3, M26)
ILK: Intel_gpu_tools, igt_kms_flip_flip-vs-fences-interruptible, DMESG_WARN(3, M26)PASS(1, M37) -> DMESG_WARN(1, M26)PASS(3, M26)
ILK: Intel_gpu_tools, igt_kms_flip_flip-vs-modeset-interruptible, DMESG_WARN(3, M26)PASS(1, M37) -> DMESG_WARN(1, M26)PASS(3, M26)
ILK: Intel_gpu_tools, igt_kms_flip_flip-vs-panning-vs-hang, DMESG_WARN(3, M26)PASS(1, M37) -> DMESG_WARN(1, M26)PASS(3, M26)
ILK: Intel_gpu_tools, igt_kms_flip_flip-vs-rmfb, DMESG_WARN(3, M26)PASS(1, M37) -> DMESG_WARN(2, M26)PASS(2, M26)
ILK: Intel_gpu_tools, igt_kms_flip_wf_vblank-interruptible, DMESG_WARN(3, M26)PASS(1, M37) -> DMESG_WARN(2, M26)PASS(2, M26)
ILK: Intel_gpu_tools, igt_kms_flip_wf_vblank-vs-dpms-interruptible, DMESG_WARN(3, M26)PASS(1, M37) -> DMESG_WARN(1, M26)PASS(3, M26)
ILK: Intel_gpu_tools, igt_kms_flip_wf_vblank-vs-modeset, DMESG_WARN(3, M26)PASS(1, M37) -> DMESG_WARN(1, M26)PASS(3, M26)
ILK: Intel_gpu_tools, igt_kms_flip_wf_vblank-vs-modeset-interruptible, DMESG_WARN(3, M26)PASS(1, M37) -> DMESG_WARN(1, M26)PASS(3, M26)
ILK: Intel_gpu_tools, igt_kms_render_gpu-blit, DMESG_WARN(3, M26)PASS(1, M37) -> DMESG_WARN(1, M26)PASS(3, M26)
IVB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-early-read, CRASH(1, M4) -> CRASH(3, M4)PASS(1, M4)
IVB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-early-read-forked, DMESG_FAIL(1, M4) -> DMESG_FAIL(3, M4)PASS(1, M4)
IVB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-gpu-read-after-write, CRASH(1, M4) -> CRASH(3, M4)PASS(1, M4)
IVB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-gpu-read-after-write-forked, DMESG_FAIL(1, M4) -> DMESG_FAIL(3, M4)PASS(1, M4)
IVB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-early-read, CRASH(1, M4) -> CRASH(3, M4)PASS(1, M4)
IVB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-early-read-forked, DMESG_FAIL(1, M4) -> DMESG_FAIL(3, M4)PASS(1, M4)
IVB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-gpu-read-after-write, CRASH(1, M4) -> CRASH(3, M4)PASS(1, M4)
IVB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-gpu-read-after-write-forked, DMESG_FAIL(1, M4) -> DMESG_FAIL(3, M4)PASS(1, M4)
IVB: Intel_gpu_tools, igt_kms_3d, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-128x128-onscreen, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-128x128-random, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-128x128-sliding, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-256x256-offscreen, PASS(1, M4) -> DMESG_WARN(1, M4)TIMEOUT(1, M4)PASS(2, M4)
IVB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-256x256-onscreen, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-256x256-random, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-256x256-sliding, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-64x64-offscreen, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-64x64-onscreen, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-64x64-random, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-64x64-sliding, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_fence_pin_leak, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_absolute-wf_vblank-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_blocking-absolute-wf_vblank, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_blocking-absolute-wf_vblank-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_bo-too-big-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_busy-flip, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_busy-flip-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_dpms-off-confusion, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_dpms-off-confusion-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_dpms-vs-vblank-race, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_dpms-vs-vblank-race-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_event_leak, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-dpms-off-vs-modeset, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-dpms-off-vs-modeset-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-expired-vblank, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-expired-vblank-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-fences, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-fences-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-modeset-vs-hang, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-modeset-vs-hang-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-panning, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-panning-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-panning-vs-hang, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-panning-vs-hang-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-rmfb, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_flip-vs-rmfb-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_modeset-vs-vblank-race, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_modeset-vs-vblank-race-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_nonexisting-fb, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_nonexisting-fb-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_plain-flip, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_plain-flip-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_single-buffer-flip-vs-dpms-off-vs-modeset, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_single-buffer-flip-vs-dpms-off-vs-modeset-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_tiling_flip-changes-tiling, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_vblank-vs-hang, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_wf_vblank, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_flip_wf_vblank-interruptible, PASS(1, M4) -> DMESG_WARN(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_mmio_vs_cs_flip_setcrtc_vs_cs_flip, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_mmio_vs_cs_flip_setplane_vs_cs_flip, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_pipe_crc_basic_hang-read-crc-pipe-A, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_pipe_crc_basic_hang-read-crc-pipe-B, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_pipe_crc_basic_hang-read-crc-pipe-C, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-A, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-A-frame-sequence, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-B, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-B-frame-sequence, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-C, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-C-frame-sequence, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-A-plane-1, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-A-plane-2, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-B-plane-1, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-B-plane-2, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-C-plane-1, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-C-plane-2, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-A-plane-1, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-A-plane-2, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-B-plane-1, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-B-plane-2, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-C-plane-1, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-C-plane-2, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-A-plane-1, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-A-plane-2, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-B-plane-1, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-B-plane-2, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-C-plane-1, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-C-plane-2, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-A-plane-1, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-A-plane-2, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-B-plane-1, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-B-plane-2, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-C-plane-1, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-C-plane-2, PASS(1, M4) -> TIMEOUT(1, M4)PASS(3, M4)
IVB: Intel_gpu_tools, igt_kms_rotation_crc_primary-rotation, PASS(1, M4) -> TIMEOUT(1, M4)PASS(1, M4)
IVB: Intel_gpu_tools, igt_kms_rotation_crc_sprite-rotation, PASS(1, M4) -> TIMEOUT(1, M4)
IVB: Intel_gpu_tools, igt_kms_setmode_invalid-clone-single-crtc, PASS(1, M4) -> DMESG_WARN(1, M4)
SNB: Intel_gpu_tools, igt_gem_concurrent_blit_gpu-bcs-overwrite-source, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-early-read, CRASH(1, M35) -> CRASH(3, M22)PASS(1, M22)
SNB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-early-read-forked, DMESG_FAIL(1, M35) -> DMESG_FAIL(3, M22)PASS(1, M22)
SNB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-gpu-read-after-write, CRASH(1, M35) -> CRASH(3, M22)PASS(1, M22)
SNB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-gpu-read-after-write-forked, DMESG_FAIL(1, M35) -> DMESG_FAIL(3, M22)PASS(1, M22)
SNB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-early-read, CRASH(1, M35) -> CRASH(3, M22)PASS(1, M22)
SNB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-early-read-forked, DMESG_FAIL(1, M35) -> DMESG_FAIL(3, M22)PASS(1, M22)
SNB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-gpu-read-after-write, CRASH(1, M35) -> CRASH(3, M22)PASS(1, M22)
SNB: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-gpu-read-after-write-forked, DMESG_FAIL(1, M35) -> DMESG_FAIL(3, M22)PASS(1, M22)
SNB: Intel_gpu_tools, igt_kms_3d, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-256x256-offscreen, DMESG_WARN(1, M35) -> FAIL(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-256x256-random, DMESG_WARN(1, M35) -> FAIL(1, M22)DMESG_WARN(2, M22)PASS(1, M22)
SNB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-256x256-sliding, PASS(1, M35) -> FAIL(1, M22)DMESG_WARN(1, M22)PASS(2, M22)
SNB: Intel_gpu_tools, igt_kms_cursor_crc_cursor-64x64-onscreen, PASS(1, M35) -> FAIL(1, M22)DMESG_WARN(1, M22)PASS(2, M22)
SNB: Intel_gpu_tools, igt_kms_fence_pin_leak, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_absolute-wf_vblank, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_absolute-wf_vblank-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_blocking-absolute-wf_vblank, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_blocking-absolute-wf_vblank-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_bo-too-big, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_bo-too-big-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_busy-flip, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_busy-flip-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_dpms-off-confusion, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_dpms-off-confusion-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_dpms-vs-vblank-race, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_dpms-vs-vblank-race-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_event_leak, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_flip-vs-dpms-off-vs-modeset, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_flip-vs-dpms-off-vs-modeset-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_flip-vs-expired-vblank, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_flip-vs-expired-vblank-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_flip-vs-fences, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_flip-vs-fences-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_flip-vs-modeset-vs-hang, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_flip-vs-panning, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_flip-vs-panning-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_flip-vs-panning-vs-hang, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_flip-vs-rmfb, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_flip-vs-rmfb-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_modeset-vs-vblank-race, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_modeset-vs-vblank-race-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_nonexisting-fb, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_nonexisting-fb-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_plain-flip, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_plain-flip-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_single-buffer-flip-vs-dpms-off-vs-modeset, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_single-buffer-flip-vs-dpms-off-vs-modeset-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_vblank-vs-dpms-rpm, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_vblank-vs-hang, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_vblank-vs-hang-interruptible, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_vblank-vs-modeset-rpm, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_flip_wf_vblank, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_mmio_vs_cs_flip_setcrtc_vs_cs_flip, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_mmio_vs_cs_flip_setplane_vs_cs_flip, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_pipe_crc_basic_hang-read-crc-pipe-A, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_pipe_crc_basic_hang-read-crc-pipe-B, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-A, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-A-frame-sequence, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-B-frame-sequence, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-A-plane-1, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-A-plane-2, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-B-plane-1, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-B-plane-2, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-A-plane-1, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-B-plane-1, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-B-plane-2, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-A-plane-1, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-A-plane-2, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-B-plane-1, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-B-plane-2, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-A-plane-1, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-A-plane-2, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-B-plane-1, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-B-plane-2, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_rotation_crc_primary-rotation, PASS(1, M35) -> FAIL(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_kms_setmode_invalid-clone-single-crtc, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_cursor, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_debugfs-forcewake-user, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_debugfs-read, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_dpms-mode-unset-non-lpsp, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_dpms-non-lpsp, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_drm-resources-equal, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_fences, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_fences-dpms, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_gem-execbuf, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_gem-idle, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_gem-mmap-cpu, PASS(1, M35) -> DMESG_WARN(1, M22)PASS(3, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_gem-mmap-gtt, PASS(1, M35) -> DMESG_WARN(1, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_gem-pread, PASS(1, M35) -> DMESG_WARN(1, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_i2c, PASS(1, M35) -> DMESG_WARN(1, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_modeset-non-lpsp, PASS(1, M35) -> DMESG_WARN(1, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_modeset-non-lpsp-stress-no-wait, PASS(1, M35) -> DMESG_WARN(1, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_pci-d3-state, PASS(1, M35) -> DMESG_WARN(1, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_reg-read-ioctl, PASS(1, M35) -> DMESG_WARN(1, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_rte, PASS(1, M35) -> DMESG_WARN(1, M22)
SNB: Intel_gpu_tools, igt_pm_rpm_sysfs-read, PASS(1, M35) -> DMESG_WARN(1, M22)
HSW: Intel_gpu_tools, igt_gem_concurrent_blit_gpu-rcs-early-read-forked, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-early-read, CRASH(1, M40) -> CRASH(3, M39)PASS(1, M39)
HSW: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-early-read-forked, DMESG_FAIL(1, M40) -> DMESG_FAIL(3, M39)PASS(1, M39)
HSW: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-gpu-read-after-write, CRASH(1, M40) -> CRASH(3, M39)PASS(1, M39)
HSW: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-gpu-read-after-write-forked, DMESG_FAIL(1, M40) -> DMESG_FAIL(3, M39)PASS(1, M39)
HSW: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-early-read, CRASH(1, M40) -> CRASH(3, M39)PASS(1, M39)
HSW: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-early-read-forked, DMESG_FAIL(1, M40) -> DMESG_FAIL(3, M39)PASS(1, M39)
HSW: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-gpu-read-after-write, CRASH(1, M40) -> CRASH(3, M39)PASS(1, M39)
HSW: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-gpu-read-after-write-forked, DMESG_FAIL(1, M40) -> DMESG_FAIL(3, M39)PASS(1, M39)
HSW: Intel_gpu_tools, igt_gem_userptr_blits_coherency-unsync, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_cursor_crc_cursor-128x128-onscreen, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_cursor_crc_cursor-128x128-sliding, PASS(1, M40) -> DMESG_WARN(1, M39)TIMEOUT(1, M39)PASS(2, M39)
HSW: Intel_gpu_tools, igt_kms_cursor_crc_cursor-256x256-offscreen, PASS(1, M40) -> DMESG_WARN(2, M39)TIMEOUT(1, M39)PASS(1, M39)
HSW: Intel_gpu_tools, igt_kms_cursor_crc_cursor-256x256-onscreen, PASS(1, M40) -> DMESG_WARN(1, M39)TIMEOUT(1, M39)PASS(2, M39)
HSW: Intel_gpu_tools, igt_kms_cursor_crc_cursor-256x256-random, PASS(1, M40) -> DMESG_WARN(1, M39)TIMEOUT(1, M39)PASS(2, M39)
HSW: Intel_gpu_tools, igt_kms_cursor_crc_cursor-64x64-offscreen, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_cursor_crc_cursor-64x64-onscreen, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_cursor_crc_cursor-64x64-random, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_cursor_crc_cursor-64x64-sliding, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_cursor_crc_cursor-size-change, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_fence_pin_leak, PASS(1, M40) -> DMESG_WARN(2, M39)PASS(2, M39)
HSW: Intel_gpu_tools, igt_kms_flip_absolute-wf_vblank, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_absolute-wf_vblank-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_blocking-absolute-wf_vblank, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_blocking-absolute-wf_vblank-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_bo-too-big, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_bo-too-big-interruptible, PASS(1, M40) -> DMESG_WARN(2, M39)PASS(2, M39)
HSW: Intel_gpu_tools, igt_kms_flip_busy-flip, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_busy-flip-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_dpms-off-confusion, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_dpms-off-confusion-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_dpms-vs-vblank-race, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_dpms-vs-vblank-race-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-dpms-off-vs-modeset, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-dpms-off-vs-modeset-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-expired-vblank, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-expired-vblank-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-fences, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-fences-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-modeset-vs-hang, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-modeset-vs-hang-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-panning, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-panning-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-panning-vs-hang, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-panning-vs-hang-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-rmfb, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_flip-vs-rmfb-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_modeset-vs-vblank-race, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_modeset-vs-vblank-race-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_nonexisting-fb, PASS(1, M40) -> DMESG_WARN(2, M39)PASS(2, M39)
HSW: Intel_gpu_tools, igt_kms_flip_nonexisting-fb-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_plain-flip, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_plain-flip-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_single-buffer-flip-vs-dpms-off-vs-modeset, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_single-buffer-flip-vs-dpms-off-vs-modeset-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_tiling_flip-changes-tiling, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_vblank-vs-hang, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_vblank-vs-hang-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_wf_vblank, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_flip_wf_vblank-interruptible, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_mmio_vs_cs_flip_setcrtc_vs_cs_flip, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_mmio_vs_cs_flip_setplane_vs_cs_flip, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_pipe_crc_basic_bad-nb-words-1, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_pipe_crc_basic_hang-read-crc-pipe-A, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_pipe_crc_basic_hang-read-crc-pipe-C, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-A, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-A-frame-sequence, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-B, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-B-frame-sequence, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-C, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_pipe_crc_basic_read-crc-pipe-C-frame-sequence, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-A-plane-1, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-A-plane-2, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-B-plane-1, PASS(1, M40) -> DMESG_WARN(1, M39)TIMEOUT(1, M39)PASS(2, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-B-plane-2, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-C-plane-1, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-panning-bottom-right-pipe-C-plane-2, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-A-plane-1, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-A-plane-2, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-B-plane-1, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-B-plane-2, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-C-plane-1, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-panning-top-left-pipe-C-plane-2, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-A-plane-1, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-A-plane-2, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-B-plane-1, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-B-plane-2, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-C-plane-1, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-position-covered-pipe-C-plane-2, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-A-plane-1, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-A-plane-2, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-B-plane-1, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-B-plane-2, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-C-plane-1, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_plane_plane-position-hole-pipe-C-plane-2, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_rotation_crc_primary-rotation, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_rotation_crc_sprite-rotation, PASS(1, M40) -> TIMEOUT(1, M39)PASS(3, M39)
HSW: Intel_gpu_tools, igt_kms_setmode_invalid-clone-single-crtc, PASS(1, M40) -> DMESG_WARN(1, M39)PASS(3, M39)
BDW: Intel_gpu_tools, igt_gem_concurrent_blit_gpu-bcs-overwrite-source-interruptible, PASS(4, M42) -> DMESG_WARN(1, M42)PASS(3, M42)
BDW: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-early-read, CRASH(1, M42)PASS(3, M42) -> CRASH(3, M42)PASS(1, M42)
BDW: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-bcs-gpu-read-after-write, CRASH(1, M42)PASS(3, M42) -> CRASH(3, M42)PASS(1, M42)
BDW: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-early-read, CRASH(1, M42)PASS(3, M42) -> CRASH(3, M42)PASS(1, M42)
BDW: Intel_gpu_tools, igt_gem_concurrent_blit_gttX-rcs-gpu-read-after-write, CRASH(1, M42)DMESG_WARN(1, M42)PASS(2, M42) -> CRASH(3, M42)PASS(1, M42)
BDW: Intel_gpu_tools, igt_gem_gtt_hog, DMESG_FAIL(1, M42)PASS(3, M42) -> DMESG_FAIL(3, M42)PASS(1, M42)
BDW: Intel_gpu_tools, igt_gem_userptr_blits_forked-sync-interruptible, PASS(4, M42) -> DMESG_WARN(1, M42)PASS(3, M42)
BDW: Intel_gpu_tools, igt_gem_userptr_blits_forked-sync-mempressure-interruptible, PASS(4, M42) -> NO_RESULT(1, M42)PASS(3, M42)
BDW: Intel_gpu_tools, igt_gem_userptr_blits_forked-sync-multifd-mempressure-normal, PASS(4, M42) -> DMESG_WARN(1, M42)PASS(3, M42)
BDW: Intel_gpu_tools, igt_kms_fence_pin_leak, DMESG_WARN(3, M42)PASS(1, M42) -> DMESG_WARN(1, M42)PASS(3, M42)
BDW: Intel_gpu_tools, igt_kms_setmode_invalid-clone-single-crtc, DMESG_WARN(3, M42)PASS(1, M42) -> DMESG_WARN(1, M42)PASS(3, M42)
Ville Syrjälä Nov. 10, 2014, 10:40 a.m. UTC | #2
On Fri, Nov 07, 2014 at 04:07:50PM -0800, Bob Paauwe wrote:
> The pipe config needs to be initialized before calling crtc_compute_clock
> since this will update the new_config structure DPLL values. Initializing
> the new_config structure after calling crtc_compute_clock can result in
> incorrect timing values.
> 
> This regression was introduced in
> 
> commit 0dbdf89f27b17ae1eceed6782c2917f74cbb5d59
> Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
> Date:   Wed Oct 29 11:32:33 2014 +0200
> 
>     drm/i915: Add infrastructure for choosing DPLLs before disabling crtcs
> 
> 	and
> 
> 	commit 00d958817dd3daaa452c221387ddaf23d1e4c06f
> 	Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
> 	Date:   Wed Oct 29 11:32:36 2014 +0200
> 
> 	    drm/i915: Covert remaining platforms to choose DPLLS before disabling CRTCs
> 
> Signed-off-by: Bob Paauwe <bob.j.paauwe@intel.com>
> CC: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
> ---
>  drivers/gpu/drm/i915/intel_display.c | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index ff071a7..53f3d3a 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -10774,7 +10774,11 @@ static int __intel_set_mode(struct drm_crtc *crtc,
>  		}
>  		intel_dump_pipe_config(to_intel_crtc(crtc), pipe_config,
>  				       "[modeset]");
> -		to_intel_crtc(crtc)->new_config = pipe_config;

new_config _is_ initialized here.

> +
> +		/* mode_set/enable/disable functions rely on a correct pipe
> +		 * config. */
> +		to_intel_crtc(crtc)->config = *pipe_config;
> +		to_intel_crtc(crtc)->new_config = &to_intel_crtc(crtc)->config;

And this will clobber the old config before we even know if the modeset
will succeed. That's not what we want.

You didn't really describe the problem you're seeing, so coming up with
theories is a bit hard. I guess one problem could be that some piece of
code is still looking at crtc->config when it should be looking at
crtc->new_config. In any case, I suggest you tell us a bit more before
anyone spends too much time guessing.

>  	}
>  
>  	/*
> @@ -10820,10 +10824,6 @@ static int __intel_set_mode(struct drm_crtc *crtc,
>  	 */
>  	if (modeset_pipes) {
>  		crtc->mode = *mode;
> -		/* mode_set/enable/disable functions rely on a correct pipe
> -		 * config. */
> -		to_intel_crtc(crtc)->config = *pipe_config;
> -		to_intel_crtc(crtc)->new_config = &to_intel_crtc(crtc)->config;
>  
>  		/*
>  		 * Calculate and store various constants which
> -- 
> 1.8.3.1
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Paauwe, Bob J Nov. 10, 2014, 10:50 p.m. UTC | #3
On Mon, 10 Nov 2014 12:40:47 +0200
Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:

> On Fri, Nov 07, 2014 at 04:07:50PM -0800, Bob Paauwe wrote:
> > The pipe config needs to be initialized before calling crtc_compute_clock
> > since this will update the new_config structure DPLL values. Initializing
> > the new_config structure after calling crtc_compute_clock can result in
> > incorrect timing values.
> > 
> > This regression was introduced in
> > 
> > commit 0dbdf89f27b17ae1eceed6782c2917f74cbb5d59
> > Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
> > Date:   Wed Oct 29 11:32:33 2014 +0200
> > 
> >     drm/i915: Add infrastructure for choosing DPLLs before disabling crtcs
> > 
> > 	and
> > 
> > 	commit 00d958817dd3daaa452c221387ddaf23d1e4c06f
> > 	Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
> > 	Date:   Wed Oct 29 11:32:36 2014 +0200
> > 
> > 	    drm/i915: Covert remaining platforms to choose DPLLS before disabling CRTCs
> > 
> > Signed-off-by: Bob Paauwe <bob.j.paauwe@intel.com>
> > CC: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
> > ---
> >  drivers/gpu/drm/i915/intel_display.c | 10 +++++-----
> >  1 file changed, 5 insertions(+), 5 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> > index ff071a7..53f3d3a 100644
> > --- a/drivers/gpu/drm/i915/intel_display.c
> > +++ b/drivers/gpu/drm/i915/intel_display.c
> > @@ -10774,7 +10774,11 @@ static int __intel_set_mode(struct drm_crtc *crtc,
> >  		}
> >  		intel_dump_pipe_config(to_intel_crtc(crtc), pipe_config,
> >  				       "[modeset]");
> > -		to_intel_crtc(crtc)->new_config = pipe_config;
> 
> new_config _is_ initialized here.
> 
> > +
> > +		/* mode_set/enable/disable functions rely on a correct pipe
> > +		 * config. */
> > +		to_intel_crtc(crtc)->config = *pipe_config;
> > +		to_intel_crtc(crtc)->new_config = &to_intel_crtc(crtc)->config;
> 
> And this will clobber the old config before we even know if the modeset
> will succeed. That's not what we want.

Ahh, I was looking at this wrong before. For some reason I was thinking
that when this was done below, it was overwriting something that was
set in new_config/pipe_config.
> 
> You didn't really describe the problem you're seeing, so coming up with
> theories is a bit hard. I guess one problem could be that some piece of
> code is still looking at crtc->config when it should be looking at
> crtc->new_config. In any case, I suggest you tell us a bit more before
> anyone spends too much time guessing.

With the series that changes this to choose DPLLs before disabling
CRTCs, my 945 system fails to set the initial mode (no display) and I
get this error:


Nov 11 03:47:07 localhost kernel: [    2.086190] [drm:intel_pipe_config_compare [i915]] *ERROR* mismatch in adjusted_mode.crtc_clock (expected 148500, found 57600)
Nov 11 03:47:07 localhost kernel: [    2.086191] ------------[ cut here ]------------
Nov 11 03:47:07 localhost kernel: [    2.086238] WARNING: CPU: 1 PID: 56 at /home/bpaauwe/git/otc/drm-intel/drivers/gpu/drm/i915/intel_display.c:10650 check_crtc_state+0x244/0x2ac [i915]()
Nov 11 03:47:07 localhost kernel: [    2.086239] pipe state doesn't match!

I bisected it back to the commit referenced above.

I had been thinking that something was not getting set property, but your
insight that maybe something was using the old values is right.  I found 
where it's doing that.  I'll send out a new patch shortly.

> 
> >  	}
> >  
> >  	/*
> > @@ -10820,10 +10824,6 @@ static int __intel_set_mode(struct drm_crtc *crtc,
> >  	 */
> >  	if (modeset_pipes) {
> >  		crtc->mode = *mode;
> > -		/* mode_set/enable/disable functions rely on a correct pipe
> > -		 * config. */
> > -		to_intel_crtc(crtc)->config = *pipe_config;
> > -		to_intel_crtc(crtc)->new_config = &to_intel_crtc(crtc)->config;
> >  
> >  		/*
> >  		 * Calculate and store various constants which
> > -- 
> > 1.8.3.1
> > 
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
diff mbox

Patch

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index ff071a7..53f3d3a 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -10774,7 +10774,11 @@  static int __intel_set_mode(struct drm_crtc *crtc,
 		}
 		intel_dump_pipe_config(to_intel_crtc(crtc), pipe_config,
 				       "[modeset]");
-		to_intel_crtc(crtc)->new_config = pipe_config;
+
+		/* mode_set/enable/disable functions rely on a correct pipe
+		 * config. */
+		to_intel_crtc(crtc)->config = *pipe_config;
+		to_intel_crtc(crtc)->new_config = &to_intel_crtc(crtc)->config;
 	}
 
 	/*
@@ -10820,10 +10824,6 @@  static int __intel_set_mode(struct drm_crtc *crtc,
 	 */
 	if (modeset_pipes) {
 		crtc->mode = *mode;
-		/* mode_set/enable/disable functions rely on a correct pipe
-		 * config. */
-		to_intel_crtc(crtc)->config = *pipe_config;
-		to_intel_crtc(crtc)->new_config = &to_intel_crtc(crtc)->config;
 
 		/*
 		 * Calculate and store various constants which