<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - Skylake GPU HANG while gstreamer H264 vaapi encoding from MJPEG vaapi decode on drm-tip"
href="https://bugs.freedesktop.org/show_bug.cgi?id=110394#c39">Comment # 39</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - Skylake GPU HANG while gstreamer H264 vaapi encoding from MJPEG vaapi decode on drm-tip"
href="https://bugs.freedesktop.org/show_bug.cgi?id=110394">bug 110394</a>
from <span class="vcard"><a class="email" href="mailto:andy.nicholas@shield.ai" title="Andy Nicholas <andy.nicholas@shield.ai>"> <span class="fn">Andy Nicholas</span></a>
</span></b>
<pre>(In reply to Chris Wilson from <a href="show_bug.cgi?id=110394#c25">comment #25</a>)
<span class="quote">> You can try something silly like
>
> diff --git a/drivers/gpu/drm/i915/intel_lrc.c
> b/drivers/gpu/drm/i915/intel_lrc.c
> index 4e0a351bfbca..e5feb0f5a5fe 100644
> --- a/drivers/gpu/drm/i915/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/intel_lrc.c
> @@ -2115,10 +2115,16 @@ static int gen9_emit_bb_start(struct i915_request
> *rq,
> {
> u32 *cs;
>
> - cs = intel_ring_begin(rq, 6);
> + cs = intel_ring_begin(rq, 12);
> if (IS_ERR(cs))
> return PTR_ERR(cs);
>
> + *cs++ = MI_LOAD_REGISTER_IMM(1);
> + *cs++ = i915_mmio_reg_offset(GEN6_RC_CONTROL);
> + *cs++ = GEN6_RC_CTL_HW_ENABLE |
> + GEN6_RC_CTL_RC6_ENABLE |
> + GEN6_RC_CTL_EI_MODE(1);
> +
> *cs++ = MI_ARB_ON_OFF | MI_ARB_ENABLE;
>
> *cs++ = MI_BATCH_BUFFER_START_GEN8 |
> @@ -2129,6 +2135,10 @@ static int gen9_emit_bb_start(struct i915_request *rq,
> *cs++ = MI_ARB_ON_OFF | MI_ARB_DISABLE;
> *cs++ = MI_NOOP;
>
> + *cs++ = MI_LOAD_REGISTER_IMM(1);
> + *cs++ = i915_mmio_reg_offset(GEN6_RC_CONTROL);
> + *cs++ = 0;
> +
> intel_ring_advance(rq, cs);
>
> return 0;
>
> to see if it is just an rc6 event on idling that is the culprit, while
> keeping rc6 active for the encoder.</span >
gen9_emit_bb_start() does not exist in my drm-tip sources from 4 weeks ago
(March 22). There is a gen8_emit_bb_start(), but no "gen9" or anything which
seems similar.
andy@kbuild:/build/kernel/drm-tip/drm-tip/drivers/gpu/drm/i915$ git log
commit 00cb3798a5d008c3f824fe7c89c663dba66155c3 (HEAD -> drm-tip,
origin/drm-tip, origin/HEAD)
Author: Rodrigo Vivi <<a href="mailto:rodrigo.vivi@intel.com">rodrigo.vivi@intel.com</a>>
Date: Fri Mar 22 12:52:43 2019 -0700
drm-tip: 2019y-03m-22d-19h-51m-23s UTC integration manifest</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
<li>You are the assignee for the bug.</li>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>