All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] drm/i915: Ensure the engine is idle before manually changing HWS
@ 2017-03-03 12:19 Chris Wilson
  2017-03-03 12:19 ` [PATCH 2/2] drm/i915: Generalise wait for execlists to be idle Chris Wilson
  2017-03-03 13:17 ` ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915: Ensure the engine is idle before manually changing HWS Patchwork
  0 siblings, 2 replies; 6+ messages in thread
From: Chris Wilson @ 2017-03-03 12:19 UTC (permalink / raw)
  To: intel-gfx; +Cc: Mika Kuoppala

During reset_all_global_seqno() on seqno rollover, we have to update the
HWS. This causes all in flight requests to be completed, so first we
wait. However, we were only waiting for the requests themselves to be
completed and clearing out the waiter rbtrees - what I had missed was
the extra reference in execlists->port[]. Since commit fe9ae7a3bfdb
("drm/i915/execlists: Detect an out-of-order context switch") we can
detect when the request is retired before the context switch interrupt
is completed. The impact should be neglible outside of debugging.

Testcase: igt/gem_exec_whisper
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala@intel.com>
---
 drivers/gpu/drm/i915/i915_gem_request.c |  3 +++
 drivers/gpu/drm/i915/intel_engine_cs.c  | 31 +++++++++++++++++++++++++++++++
 drivers/gpu/drm/i915/intel_ringbuffer.h |  2 ++
 3 files changed, 36 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_gem_request.c b/drivers/gpu/drm/i915/i915_gem_request.c
index c2cee9674cb0..b36a7644e055 100644
--- a/drivers/gpu/drm/i915/i915_gem_request.c
+++ b/drivers/gpu/drm/i915/i915_gem_request.c
@@ -196,6 +196,9 @@ static int reset_all_global_seqno(struct drm_i915_private *i915, u32 seqno)
 	for_each_engine(engine, i915, id) {
 		struct intel_timeline *tl = &timeline->engine[id];
 
+		if (wait_for(intel_engine_is_idle(engine), 50))
+			return -EBUSY;
+
 		if (!i915_seqno_passed(seqno, tl->seqno)) {
 			/* spin until threads are complete */
 			while (intel_breadcrumbs_busy(engine))
diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
index c58339b22f6a..53d65dc0c9fb 100644
--- a/drivers/gpu/drm/i915/intel_engine_cs.c
+++ b/drivers/gpu/drm/i915/intel_engine_cs.c
@@ -1071,6 +1071,37 @@ int intel_ring_workarounds_emit(struct drm_i915_gem_request *req)
 	return 0;
 }
 
+/**
+ * intel_engine_is_idle() - Report if the engine has finished process all work
+ * @engine: the intel_engine_cs
+ *
+ * Return true if there are no requests pending, nothing left to be submitted
+ * to hardware, and that the engine is idle.
+ */
+bool intel_engine_is_idle(struct intel_engine_cs *engine)
+{
+	struct drm_i915_private *dev_priv = engine->i915;
+
+	/* Any inflight/incomplete requests? */
+	if (!i915_seqno_passed(intel_engine_get_seqno(engine),
+			       intel_engine_last_submit(engine)))
+		return false;
+
+	/* Interrupt/tasklet pending? */
+	if (test_bit(ENGINE_IRQ_EXECLIST, &engine->irq_posted))
+		return false;
+
+	/* Both ports drained, no more ELSP submission? */
+	if (engine->execlist_port[0].request)
+		return false;
+
+	/* Ring stopped? */
+	if (INTEL_GEN(dev_priv) > 2 && !(I915_READ_MODE(engine) & MODE_IDLE))
+		return false;
+
+	return true;
+}
+
 #if IS_ENABLED(CONFIG_DRM_I915_SELFTEST)
 #include "selftests/mock_engine.c"
 #endif
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
index 3dd6eee4a08b..38580765bfd6 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -664,4 +664,6 @@ static inline u32 *gen8_emit_pipe_control(u32 *batch, u32 flags, u32 offset)
 	return batch + 6;
 }
 
+bool intel_engine_is_idle(struct intel_engine_cs *engine);
+
 #endif /* _INTEL_RINGBUFFER_H_ */
-- 
2.11.0

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/2] drm/i915: Generalise wait for execlists to be idle
  2017-03-03 12:19 [PATCH 1/2] drm/i915: Ensure the engine is idle before manually changing HWS Chris Wilson
@ 2017-03-03 12:19 ` Chris Wilson
  2017-03-03 12:55   ` Mika Kuoppala
  2017-03-03 13:17 ` ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915: Ensure the engine is idle before manually changing HWS Patchwork
  1 sibling, 1 reply; 6+ messages in thread
From: Chris Wilson @ 2017-03-03 12:19 UTC (permalink / raw)
  To: intel-gfx

The code to check for execlists completion is generic, so move it to
intel_engine_cs.c

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
 drivers/gpu/drm/i915/i915_gem.c                   |  8 +++----
 drivers/gpu/drm/i915/intel_engine_cs.c            | 13 +++++++++++
 drivers/gpu/drm/i915/intel_lrc.c                  | 28 -----------------------
 drivers/gpu/drm/i915/intel_lrc.h                  |  1 -
 drivers/gpu/drm/i915/intel_ringbuffer.h           |  1 +
 drivers/gpu/drm/i915/selftests/i915_gem_request.c |  2 +-
 6 files changed, 19 insertions(+), 34 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 5efb18a229cc..7c20601fe1de 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -2959,8 +2959,8 @@ i915_gem_idle_work_handler(struct work_struct *work)
 	 * new request is submitted.
 	 */
 	wait_for(READ_ONCE(dev_priv->gt.active_requests) ||
-		 intel_execlists_idle(dev_priv), 10);
-
+		 intel_engines_are_idle(dev_priv),
+		 10);
 	if (READ_ONCE(dev_priv->gt.active_requests))
 		return;
 
@@ -2985,7 +2985,7 @@ i915_gem_idle_work_handler(struct work_struct *work)
 	if (dev_priv->gt.active_requests)
 		goto out_unlock;
 
-	if (wait_for(intel_execlists_idle(dev_priv), 10))
+	if (wait_for(intel_engines_are_idle(dev_priv), 10))
 		DRM_ERROR("Timeout waiting for engines to idle\n");
 
 	for_each_engine(engine, dev_priv, id) {
@@ -4287,7 +4287,7 @@ int i915_gem_suspend(struct drm_i915_private *dev_priv)
 	 * reset the GPU back to its idle, low power state.
 	 */
 	WARN_ON(dev_priv->gt.awake);
-	WARN_ON(!intel_execlists_idle(dev_priv));
+	WARN_ON(!intel_engines_are_idle(dev_priv));
 
 	/*
 	 * Neither the BIOS, ourselves or any other kernel
diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
index 53d65dc0c9fb..5fd4883db235 100644
--- a/drivers/gpu/drm/i915/intel_engine_cs.c
+++ b/drivers/gpu/drm/i915/intel_engine_cs.c
@@ -1102,6 +1102,19 @@ bool intel_engine_is_idle(struct intel_engine_cs *engine)
 	return true;
 }
 
+bool intel_engines_are_idle(struct drm_i915_private *dev_priv)
+{
+	struct intel_engine_cs *engine;
+	enum intel_engine_id id;
+
+	for_each_engine(engine, dev_priv, id) {
+		if (!intel_engine_is_idle(engine))
+			return false;
+	}
+
+	return true;
+}
+
 #if IS_ENABLED(CONFIG_DRM_I915_SELFTEST)
 #include "selftests/mock_engine.c"
 #endif
diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
index f9a8545474bc..3834a84fe084 100644
--- a/drivers/gpu/drm/i915/intel_lrc.c
+++ b/drivers/gpu/drm/i915/intel_lrc.c
@@ -498,34 +498,6 @@ static bool execlists_elsp_idle(struct intel_engine_cs *engine)
 	return !engine->execlist_port[0].request;
 }
 
-/**
- * intel_execlists_idle() - Determine if all engine submission ports are idle
- * @dev_priv: i915 device private
- *
- * Return true if there are no requests pending on any of the submission ports
- * of any engines.
- */
-bool intel_execlists_idle(struct drm_i915_private *dev_priv)
-{
-	struct intel_engine_cs *engine;
-	enum intel_engine_id id;
-
-	if (!i915.enable_execlists)
-		return true;
-
-	for_each_engine(engine, dev_priv, id) {
-		/* Interrupt/tasklet pending? */
-		if (test_bit(ENGINE_IRQ_EXECLIST, &engine->irq_posted))
-			return false;
-
-		/* Both ports drained, no more ELSP submission? */
-		if (!execlists_elsp_idle(engine))
-			return false;
-	}
-
-	return true;
-}
-
 static bool execlists_elsp_ready(const struct intel_engine_cs *engine)
 {
 	const struct execlist_port *port = engine->execlist_port;
diff --git a/drivers/gpu/drm/i915/intel_lrc.h b/drivers/gpu/drm/i915/intel_lrc.h
index c8009c7bfbdd..5fc07761caff 100644
--- a/drivers/gpu/drm/i915/intel_lrc.h
+++ b/drivers/gpu/drm/i915/intel_lrc.h
@@ -88,6 +88,5 @@ uint64_t intel_lr_context_descriptor(struct i915_gem_context *ctx,
 int intel_sanitize_enable_execlists(struct drm_i915_private *dev_priv,
 				    int enable_execlists);
 void intel_execlists_enable_submission(struct drm_i915_private *dev_priv);
-bool intel_execlists_idle(struct drm_i915_private *dev_priv);
 
 #endif /* _INTEL_LRC_H_ */
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
index 38580765bfd6..55a6a3f8274c 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -665,5 +665,6 @@ static inline u32 *gen8_emit_pipe_control(u32 *batch, u32 flags, u32 offset)
 }
 
 bool intel_engine_is_idle(struct intel_engine_cs *engine);
+bool intel_engines_are_idle(struct drm_i915_private *dev_priv);
 
 #endif /* _INTEL_RINGBUFFER_H_ */
diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_request.c b/drivers/gpu/drm/i915/selftests/i915_gem_request.c
index 42bdeac93324..926b24c117d6 100644
--- a/drivers/gpu/drm/i915/selftests/i915_gem_request.c
+++ b/drivers/gpu/drm/i915/selftests/i915_gem_request.c
@@ -303,7 +303,7 @@ static int end_live_test(struct live_test *t)
 {
 	struct drm_i915_private *i915 = t->i915;
 
-	if (wait_for(intel_execlists_idle(i915), 1)) {
+	if (wait_for(intel_engines_are_idle(i915), 1)) {
 		pr_err("%s(%s): GPU not idle\n", t->func, t->name);
 		return -EIO;
 	}
-- 
2.11.0

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 2/2] drm/i915: Generalise wait for execlists to be idle
  2017-03-03 12:19 ` [PATCH 2/2] drm/i915: Generalise wait for execlists to be idle Chris Wilson
@ 2017-03-03 12:55   ` Mika Kuoppala
  0 siblings, 0 replies; 6+ messages in thread
From: Mika Kuoppala @ 2017-03-03 12:55 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

Chris Wilson <chris@chris-wilson.co.uk> writes:

> The code to check for execlists completion is generic, so move it to
> intel_engine_cs.c
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>

Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com>

> ---
>  drivers/gpu/drm/i915/i915_gem.c                   |  8 +++----
>  drivers/gpu/drm/i915/intel_engine_cs.c            | 13 +++++++++++
>  drivers/gpu/drm/i915/intel_lrc.c                  | 28 -----------------------
>  drivers/gpu/drm/i915/intel_lrc.h                  |  1 -
>  drivers/gpu/drm/i915/intel_ringbuffer.h           |  1 +
>  drivers/gpu/drm/i915/selftests/i915_gem_request.c |  2 +-
>  6 files changed, 19 insertions(+), 34 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
> index 5efb18a229cc..7c20601fe1de 100644
> --- a/drivers/gpu/drm/i915/i915_gem.c
> +++ b/drivers/gpu/drm/i915/i915_gem.c
> @@ -2959,8 +2959,8 @@ i915_gem_idle_work_handler(struct work_struct *work)
>  	 * new request is submitted.
>  	 */
>  	wait_for(READ_ONCE(dev_priv->gt.active_requests) ||
> -		 intel_execlists_idle(dev_priv), 10);
> -
> +		 intel_engines_are_idle(dev_priv),
> +		 10);
>  	if (READ_ONCE(dev_priv->gt.active_requests))
>  		return;
>  
> @@ -2985,7 +2985,7 @@ i915_gem_idle_work_handler(struct work_struct *work)
>  	if (dev_priv->gt.active_requests)
>  		goto out_unlock;
>  
> -	if (wait_for(intel_execlists_idle(dev_priv), 10))
> +	if (wait_for(intel_engines_are_idle(dev_priv), 10))
>  		DRM_ERROR("Timeout waiting for engines to idle\n");
>  
>  	for_each_engine(engine, dev_priv, id) {
> @@ -4287,7 +4287,7 @@ int i915_gem_suspend(struct drm_i915_private *dev_priv)
>  	 * reset the GPU back to its idle, low power state.
>  	 */
>  	WARN_ON(dev_priv->gt.awake);
> -	WARN_ON(!intel_execlists_idle(dev_priv));
> +	WARN_ON(!intel_engines_are_idle(dev_priv));
>  
>  	/*
>  	 * Neither the BIOS, ourselves or any other kernel
> diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
> index 53d65dc0c9fb..5fd4883db235 100644
> --- a/drivers/gpu/drm/i915/intel_engine_cs.c
> +++ b/drivers/gpu/drm/i915/intel_engine_cs.c
> @@ -1102,6 +1102,19 @@ bool intel_engine_is_idle(struct intel_engine_cs *engine)
>  	return true;
>  }
>  
> +bool intel_engines_are_idle(struct drm_i915_private *dev_priv)
> +{
> +	struct intel_engine_cs *engine;
> +	enum intel_engine_id id;
> +
> +	for_each_engine(engine, dev_priv, id) {
> +		if (!intel_engine_is_idle(engine))
> +			return false;
> +	}
> +
> +	return true;
> +}
> +
>  #if IS_ENABLED(CONFIG_DRM_I915_SELFTEST)
>  #include "selftests/mock_engine.c"
>  #endif
> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
> index f9a8545474bc..3834a84fe084 100644
> --- a/drivers/gpu/drm/i915/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/intel_lrc.c
> @@ -498,34 +498,6 @@ static bool execlists_elsp_idle(struct intel_engine_cs *engine)
>  	return !engine->execlist_port[0].request;
>  }
>  
> -/**
> - * intel_execlists_idle() - Determine if all engine submission ports are idle
> - * @dev_priv: i915 device private
> - *
> - * Return true if there are no requests pending on any of the submission ports
> - * of any engines.
> - */
> -bool intel_execlists_idle(struct drm_i915_private *dev_priv)
> -{
> -	struct intel_engine_cs *engine;
> -	enum intel_engine_id id;
> -
> -	if (!i915.enable_execlists)
> -		return true;
> -
> -	for_each_engine(engine, dev_priv, id) {
> -		/* Interrupt/tasklet pending? */
> -		if (test_bit(ENGINE_IRQ_EXECLIST, &engine->irq_posted))
> -			return false;
> -
> -		/* Both ports drained, no more ELSP submission? */
> -		if (!execlists_elsp_idle(engine))
> -			return false;
> -	}
> -
> -	return true;
> -}
> -
>  static bool execlists_elsp_ready(const struct intel_engine_cs *engine)
>  {
>  	const struct execlist_port *port = engine->execlist_port;
> diff --git a/drivers/gpu/drm/i915/intel_lrc.h b/drivers/gpu/drm/i915/intel_lrc.h
> index c8009c7bfbdd..5fc07761caff 100644
> --- a/drivers/gpu/drm/i915/intel_lrc.h
> +++ b/drivers/gpu/drm/i915/intel_lrc.h
> @@ -88,6 +88,5 @@ uint64_t intel_lr_context_descriptor(struct i915_gem_context *ctx,
>  int intel_sanitize_enable_execlists(struct drm_i915_private *dev_priv,
>  				    int enable_execlists);
>  void intel_execlists_enable_submission(struct drm_i915_private *dev_priv);
> -bool intel_execlists_idle(struct drm_i915_private *dev_priv);
>  
>  #endif /* _INTEL_LRC_H_ */
> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
> index 38580765bfd6..55a6a3f8274c 100644
> --- a/drivers/gpu/drm/i915/intel_ringbuffer.h
> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
> @@ -665,5 +665,6 @@ static inline u32 *gen8_emit_pipe_control(u32 *batch, u32 flags, u32 offset)
>  }
>  
>  bool intel_engine_is_idle(struct intel_engine_cs *engine);
> +bool intel_engines_are_idle(struct drm_i915_private *dev_priv);
>  
>  #endif /* _INTEL_RINGBUFFER_H_ */
> diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_request.c b/drivers/gpu/drm/i915/selftests/i915_gem_request.c
> index 42bdeac93324..926b24c117d6 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_gem_request.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_gem_request.c
> @@ -303,7 +303,7 @@ static int end_live_test(struct live_test *t)
>  {
>  	struct drm_i915_private *i915 = t->i915;
>  
> -	if (wait_for(intel_execlists_idle(i915), 1)) {
> +	if (wait_for(intel_engines_are_idle(i915), 1)) {
>  		pr_err("%s(%s): GPU not idle\n", t->func, t->name);
>  		return -EIO;
>  	}
> -- 
> 2.11.0
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 6+ messages in thread

* ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915: Ensure the engine is idle before manually changing HWS
  2017-03-03 12:19 [PATCH 1/2] drm/i915: Ensure the engine is idle before manually changing HWS Chris Wilson
  2017-03-03 12:19 ` [PATCH 2/2] drm/i915: Generalise wait for execlists to be idle Chris Wilson
@ 2017-03-03 13:17 ` Patchwork
  2017-03-03 13:30   ` Chris Wilson
  1 sibling, 1 reply; 6+ messages in thread
From: Patchwork @ 2017-03-03 13:17 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: series starting with [1/2] drm/i915: Ensure the engine is idle before manually changing HWS
URL   : https://patchwork.freedesktop.org/series/20617/
State : success

== Summary ==

Series 20617v1 Series without cover letter
https://patchwork.freedesktop.org/api/1.0/series/20617/revisions/1/mbox/

Test gem_exec_flush:
        Subgroup basic-batch-kernel-default-uc:
                fail       -> PASS       (fi-snb-2600) fdo#100007

fdo#100007 https://bugs.freedesktop.org/show_bug.cgi?id=100007

fi-bdw-5557u     total:278  pass:267  dwarn:0   dfail:0   fail:0   skip:11 
fi-bsw-n3050     total:278  pass:239  dwarn:0   dfail:0   fail:0   skip:39 
fi-bxt-j4205     total:278  pass:259  dwarn:0   dfail:0   fail:0   skip:19 
fi-bxt-t5700     total:278  pass:258  dwarn:0   dfail:0   fail:0   skip:20 
fi-byt-j1900     total:278  pass:251  dwarn:0   dfail:0   fail:0   skip:27 
fi-byt-n2820     total:278  pass:247  dwarn:0   dfail:0   fail:0   skip:31 
fi-hsw-4770      total:278  pass:262  dwarn:0   dfail:0   fail:0   skip:16 
fi-hsw-4770r     total:278  pass:262  dwarn:0   dfail:0   fail:0   skip:16 
fi-ilk-650       total:278  pass:228  dwarn:0   dfail:0   fail:0   skip:50 
fi-ivb-3520m     total:278  pass:260  dwarn:0   dfail:0   fail:0   skip:18 
fi-ivb-3770      total:278  pass:260  dwarn:0   dfail:0   fail:0   skip:18 
fi-kbl-7500u     total:278  pass:259  dwarn:1   dfail:0   fail:0   skip:18 
fi-skl-6260u     total:278  pass:268  dwarn:0   dfail:0   fail:0   skip:10 
fi-skl-6700hq    total:278  pass:261  dwarn:0   dfail:0   fail:0   skip:17 
fi-skl-6700k     total:278  pass:256  dwarn:4   dfail:0   fail:0   skip:18 
fi-skl-6770hq    total:278  pass:268  dwarn:0   dfail:0   fail:0   skip:10 
fi-snb-2520m     total:278  pass:250  dwarn:0   dfail:0   fail:0   skip:28 
fi-snb-2600      total:278  pass:249  dwarn:0   dfail:0   fail:0   skip:29 

76a0b805abb234682f24695a9e3742125e401ec3 drm-tip: 2017y-03m-03d-10h-38m-03s UTC integration manifest
8d09268 drm/i915: Generalise wait for execlists to be idle
f63f2a8 drm/i915: Ensure the engine is idle before manually changing HWS

== Logs ==

For more details see: https://intel-gfx-ci.01.org/CI/Patchwork_4052/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915: Ensure the engine is idle before manually changing HWS
  2017-03-03 13:17 ` ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915: Ensure the engine is idle before manually changing HWS Patchwork
@ 2017-03-03 13:30   ` Chris Wilson
  2017-03-03 13:36     ` Mika Kuoppala
  0 siblings, 1 reply; 6+ messages in thread
From: Chris Wilson @ 2017-03-03 13:30 UTC (permalink / raw)
  To: intel-gfx

On Fri, Mar 03, 2017 at 01:17:37PM -0000, Patchwork wrote:
> == Series Details ==
> 
> Series: series starting with [1/2] drm/i915: Ensure the engine is idle before manually changing HWS
> URL   : https://patchwork.freedesktop.org/series/20617/
> State : success
> 
> == Summary ==
> 
> Series 20617v1 Series without cover letter
> https://patchwork.freedesktop.org/api/1.0/series/20617/revisions/1/mbox/
> 
> Test gem_exec_flush:
>         Subgroup basic-batch-kernel-default-uc:
>                 fail       -> PASS       (fi-snb-2600) fdo#100007
> 
> fdo#100007 https://bugs.freedesktop.org/show_bug.cgi?id=100007
> 
> fi-bdw-5557u     total:278  pass:267  dwarn:0   dfail:0   fail:0   skip:11 
> fi-bsw-n3050     total:278  pass:239  dwarn:0   dfail:0   fail:0   skip:39 
> fi-bxt-j4205     total:278  pass:259  dwarn:0   dfail:0   fail:0   skip:19 
> fi-bxt-t5700     total:278  pass:258  dwarn:0   dfail:0   fail:0   skip:20 
> fi-byt-j1900     total:278  pass:251  dwarn:0   dfail:0   fail:0   skip:27 
> fi-byt-n2820     total:278  pass:247  dwarn:0   dfail:0   fail:0   skip:31 
> fi-hsw-4770      total:278  pass:262  dwarn:0   dfail:0   fail:0   skip:16 
> fi-hsw-4770r     total:278  pass:262  dwarn:0   dfail:0   fail:0   skip:16 
> fi-ilk-650       total:278  pass:228  dwarn:0   dfail:0   fail:0   skip:50 
> fi-ivb-3520m     total:278  pass:260  dwarn:0   dfail:0   fail:0   skip:18 
> fi-ivb-3770      total:278  pass:260  dwarn:0   dfail:0   fail:0   skip:18 
> fi-kbl-7500u     total:278  pass:259  dwarn:1   dfail:0   fail:0   skip:18 
> fi-skl-6260u     total:278  pass:268  dwarn:0   dfail:0   fail:0   skip:10 
> fi-skl-6700hq    total:278  pass:261  dwarn:0   dfail:0   fail:0   skip:17 
> fi-skl-6700k     total:278  pass:256  dwarn:4   dfail:0   fail:0   skip:18 
> fi-skl-6770hq    total:278  pass:268  dwarn:0   dfail:0   fail:0   skip:10 
> fi-snb-2520m     total:278  pass:250  dwarn:0   dfail:0   fail:0   skip:28 
> fi-snb-2600      total:278  pass:249  dwarn:0   dfail:0   fail:0   skip:29 
> 
> 76a0b805abb234682f24695a9e3742125e401ec3 drm-tip: 2017y-03m-03d-10h-38m-03s UTC integration manifest
> 8d09268 drm/i915: Generalise wait for execlists to be idle
> f63f2a8 drm/i915: Ensure the engine is idle before manually changing HWS

Mika did r-b the first patch! He just did it quietly.

Thanks, one bug fixed before CI hits it,
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915: Ensure the engine is idle before manually changing HWS
  2017-03-03 13:30   ` Chris Wilson
@ 2017-03-03 13:36     ` Mika Kuoppala
  0 siblings, 0 replies; 6+ messages in thread
From: Mika Kuoppala @ 2017-03-03 13:36 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

Chris Wilson <chris@chris-wilson.co.uk> writes:

> On Fri, Mar 03, 2017 at 01:17:37PM -0000, Patchwork wrote:
>> == Series Details ==
>> 
>> Series: series starting with [1/2] drm/i915: Ensure the engine is idle before manually changing HWS
>> URL   : https://patchwork.freedesktop.org/series/20617/
>> State : success
>> 
>> == Summary ==
>> 
>> Series 20617v1 Series without cover letter
>> https://patchwork.freedesktop.org/api/1.0/series/20617/revisions/1/mbox/
>> 
>> Test gem_exec_flush:
>>         Subgroup basic-batch-kernel-default-uc:
>>                 fail       -> PASS       (fi-snb-2600) fdo#100007
>> 
>> fdo#100007 https://bugs.freedesktop.org/show_bug.cgi?id=100007
>> 
>> fi-bdw-5557u     total:278  pass:267  dwarn:0   dfail:0   fail:0   skip:11 
>> fi-bsw-n3050     total:278  pass:239  dwarn:0   dfail:0   fail:0   skip:39 
>> fi-bxt-j4205     total:278  pass:259  dwarn:0   dfail:0   fail:0   skip:19 
>> fi-bxt-t5700     total:278  pass:258  dwarn:0   dfail:0   fail:0   skip:20 
>> fi-byt-j1900     total:278  pass:251  dwarn:0   dfail:0   fail:0   skip:27 
>> fi-byt-n2820     total:278  pass:247  dwarn:0   dfail:0   fail:0   skip:31 
>> fi-hsw-4770      total:278  pass:262  dwarn:0   dfail:0   fail:0   skip:16 
>> fi-hsw-4770r     total:278  pass:262  dwarn:0   dfail:0   fail:0   skip:16 
>> fi-ilk-650       total:278  pass:228  dwarn:0   dfail:0   fail:0   skip:50 
>> fi-ivb-3520m     total:278  pass:260  dwarn:0   dfail:0   fail:0   skip:18 
>> fi-ivb-3770      total:278  pass:260  dwarn:0   dfail:0   fail:0   skip:18 
>> fi-kbl-7500u     total:278  pass:259  dwarn:1   dfail:0   fail:0   skip:18 
>> fi-skl-6260u     total:278  pass:268  dwarn:0   dfail:0   fail:0   skip:10 
>> fi-skl-6700hq    total:278  pass:261  dwarn:0   dfail:0   fail:0   skip:17 
>> fi-skl-6700k     total:278  pass:256  dwarn:4   dfail:0   fail:0   skip:18 
>> fi-skl-6770hq    total:278  pass:268  dwarn:0   dfail:0   fail:0   skip:10 
>> fi-snb-2520m     total:278  pass:250  dwarn:0   dfail:0   fail:0   skip:28 
>> fi-snb-2600      total:278  pass:249  dwarn:0   dfail:0   fail:0   skip:29 
>> 
>> 76a0b805abb234682f24695a9e3742125e401ec3 drm-tip: 2017y-03m-03d-10h-38m-03s UTC integration manifest
>> 8d09268 drm/i915: Generalise wait for execlists to be idle
>> f63f2a8 drm/i915: Ensure the engine is idle before manually changing HWS
>
> Mika did r-b the first patch! He just did it quietly.

Yes, some problems with the left shift key apparently.

-Mika

>
> Thanks, one bug fixed before CI hits it,
> -Chris
>
> -- 
> Chris Wilson, Intel Open Source Technology Centre
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-03-03 13:37 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-03 12:19 [PATCH 1/2] drm/i915: Ensure the engine is idle before manually changing HWS Chris Wilson
2017-03-03 12:19 ` [PATCH 2/2] drm/i915: Generalise wait for execlists to be idle Chris Wilson
2017-03-03 12:55   ` Mika Kuoppala
2017-03-03 13:17 ` ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915: Ensure the engine is idle before manually changing HWS Patchwork
2017-03-03 13:30   ` Chris Wilson
2017-03-03 13:36     ` Mika Kuoppala

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.