[Bug 102262] [SNB CI] multi-minute cpu stall when running kms_flip at blt-wf_vblank-vs-dpms|modeset

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Aug 16 14:14:14 UTC 2017


https://bugs.freedesktop.org/show_bug.cgi?id=102262

--- Comment #1 from Daniel Vetter <daniel at ffwll.ch> ---
Created attachment 133552
  --> https://bugs.freedesktop.org/attachment.cgi?id=133552&action=edit
netconsole capture right around the stall

Includes the following debug patch applied on top:

diff --git a/drivers/gpu/drm/i915/intel_display.c
b/drivers/gpu/drm/i915/intel_display.c
index decf5da63950..15582af42be7 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -10485,6 +10485,8 @@ static int intel_crtc_atomic_check(struct drm_crtc
*crtc,
                        return ret;
        }

+       printk("after clock compute\n");
+
        if (crtc_state->color_mgmt_changed) {
                ret = intel_color_check(crtc, crtc_state);
                if (ret)
@@ -12025,6 +12027,8 @@ static int intel_atomic_check(struct drm_device *dev,
        if (ret)
                return ret;

+       printk("after check_modeset\n");
+
        for_each_oldnew_crtc_in_state(state, crtc, old_crtc_state, crtc_state,
i) {
                struct intel_crtc_state *pipe_config =
                        to_intel_crtc_state(crtc_state);
@@ -12089,7 +12093,11 @@ static int intel_atomic_check(struct drm_device *dev,
                return ret;

        intel_fbc_choose_crtc(dev_priv, state);
-       return calc_watermark_data(state);
+       ret = calc_watermark_data(state);
+
+       printk("end of atomic_check\n");
+
+       return ret;
 }

 static int intel_atomic_prepare_commit(struct drm_device *dev,
@@ -12343,7 +12351,9 @@ static void intel_atomic_commit_tail(struct
drm_atomic_state *state)
        unsigned crtc_vblank_mask = 0;
        int i;

+       printk("before wait\n");
        intel_atomic_commit_fence_wait(intel_state);
+       printk("after wait\n");

        drm_atomic_helper_wait_for_dependencies(state);

@@ -12573,6 +12583,8 @@ static int intel_atomic_commit(struct drm_device *dev,
                return ret;
        }

+       printk("after atomic prepare commit\n");
+
        /*
         * The intel_legacy_cursor_update() fast path takes care
         * of avoiding the vblank waits for simple cursor

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are on the CC list for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20170816/6a39c802/attachment-0001.html>


More information about the intel-gfx-bugs mailing list