All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915: Shrink search list for active timelines
@ 2018-05-13 13:46 Chris Wilson
  2018-05-13 14:20 ` ✓ Fi.CI.BAT: success for " Patchwork
                   ` (5 more replies)
  0 siblings, 6 replies; 9+ messages in thread
From: Chris Wilson @ 2018-05-13 13:46 UTC (permalink / raw)
  To: intel-gfx

When switching to the kernel context, we force the switch to occur after
all currently active requests (so that we know the GPU won't switch
immediately away and the kernel context remains current as we work). To
do so we have to inspect all the timelines and add a fence from the
active work to queue our switch afterwards. We can use the tracked set
of active rings to shrink our search for active timelines.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
---
 drivers/gpu/drm/i915/i915_gem_context.c | 23 ++++++++++++-----------
 1 file changed, 12 insertions(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
index 33f8a4b3c981..48254483c4a6 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
@@ -596,41 +596,42 @@ last_request_on_engine(struct i915_timeline *timeline,
 
 static bool engine_has_idle_kernel_context(struct intel_engine_cs *engine)
 {
-	struct i915_timeline *timeline;
+	struct intel_ring *ring;
 
-	list_for_each_entry(timeline, &engine->i915->gt.timelines, link) {
-		if (last_request_on_engine(timeline, engine))
+	lockdep_assert_held(&engine->i915->drm.struct_mutex);
+	list_for_each_entry(ring, &engine->i915->gt.active_rings, active_link) {
+		if (last_request_on_engine(ring->timeline, engine))
 			return false;
 	}
 
 	return intel_engine_has_kernel_context(engine);
 }
 
-int i915_gem_switch_to_kernel_context(struct drm_i915_private *dev_priv)
+int i915_gem_switch_to_kernel_context(struct drm_i915_private *i915)
 {
 	struct intel_engine_cs *engine;
-	struct i915_timeline *timeline;
 	enum intel_engine_id id;
 
-	lockdep_assert_held(&dev_priv->drm.struct_mutex);
+	lockdep_assert_held(&i915->drm.struct_mutex);
 
-	i915_retire_requests(dev_priv);
+	i915_retire_requests(i915);
 
-	for_each_engine(engine, dev_priv, id) {
+	for_each_engine(engine, i915, id) {
+		struct intel_ring *ring;
 		struct i915_request *rq;
 
 		if (engine_has_idle_kernel_context(engine))
 			continue;
 
-		rq = i915_request_alloc(engine, dev_priv->kernel_context);
+		rq = i915_request_alloc(engine, i915->kernel_context);
 		if (IS_ERR(rq))
 			return PTR_ERR(rq);
 
 		/* Queue this switch after all other activity */
-		list_for_each_entry(timeline, &dev_priv->gt.timelines, link) {
+		list_for_each_entry(ring, &i915->gt.active_rings, active_link) {
 			struct i915_request *prev;
 
-			prev = last_request_on_engine(timeline, engine);
+			prev = last_request_on_engine(ring->timeline, engine);
 			if (prev)
 				i915_sw_fence_await_sw_fence_gfp(&rq->submit,
 								 &prev->submit,
-- 
2.17.0

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

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

* ✓ Fi.CI.BAT: success for drm/i915: Shrink search list for active timelines
  2018-05-13 13:46 [PATCH] drm/i915: Shrink search list for active timelines Chris Wilson
@ 2018-05-13 14:20 ` Patchwork
  2018-05-13 15:07 ` ✓ Fi.CI.IGT: " Patchwork
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2018-05-13 14:20 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Shrink search list for active timelines
URL   : https://patchwork.freedesktop.org/series/43102/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4172 -> Patchwork_8990 =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_8990 need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_8990, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/43102/revisions/1/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_8990:

  === IGT changes ===

    ==== Warnings ====

    igt@gem_exec_gttfill@basic:
      fi-pnv-d510:        SKIP -> PASS

    


== Participating hosts (40 -> 37) ==

  Missing    (3): fi-ilk-m540 fi-byt-squawks fi-skl-6700hq 


== Build changes ==

    * Linux: CI_DRM_4172 -> Patchwork_8990

  CI_DRM_4172: b4c14c0809e8f6dba9a4fdf1a659cea5a98750d3 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4475: 35f08c12aa216d5b62a5b9984b575cee6905098f @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_8990: 10a97ddb0e4dcb864c09720da083c56bb23d513e @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4475: 3ba0657bff4216d1ec7179935590261855f1651e @ git://anongit.freedesktop.org/piglit


== Linux commits ==

10a97ddb0e4d drm/i915: Shrink search list for active timelines

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_8990/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* ✓ Fi.CI.IGT: success for drm/i915: Shrink search list for active timelines
  2018-05-13 13:46 [PATCH] drm/i915: Shrink search list for active timelines Chris Wilson
  2018-05-13 14:20 ` ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-05-13 15:07 ` Patchwork
  2018-05-15 13:42 ` [PATCH] " Tvrtko Ursulin
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2018-05-13 15:07 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Shrink search list for active timelines
URL   : https://patchwork.freedesktop.org/series/43102/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4172_full -> Patchwork_8990_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_8990_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_8990_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/43102/revisions/1/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_8990_full:

  === IGT changes ===

    ==== Warnings ====

    igt@gem_mocs_settings@mocs-rc6-bsd1:
      shard-kbl:          SKIP -> PASS

    igt@gem_pwrite@big-cpu-random:
      shard-kbl:          PASS -> SKIP +2

    igt@kms_frontbuffer_tracking@fbc-suspend:
      shard-snb:          PASS -> SKIP

    
== Known issues ==

  Here are the changes found in Patchwork_8990_full that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@kms_flip@flip-vs-wf_vblank-interruptible:
      shard-glk:          PASS -> FAIL (fdo#100368)

    igt@kms_frontbuffer_tracking@fbc-badstride:
      shard-kbl:          PASS -> DMESG-WARN (fdo#103558, fdo#105602) +14

    igt@pm_rpm@fences-dpms:
      shard-kbl:          PASS -> DMESG-WARN (fdo#103313, fdo#103558, fdo#105602) +4

    igt@pm_rpm@pm-caching:
      shard-kbl:          PASS -> DMESG-WARN (fdo#103313, fdo#103558)

    
    ==== Possible fixes ====

    igt@kms_atomic_transition@1x-modeset-transitions-nonblocking:
      shard-apl:          FAIL (fdo#104724, fdo#103207) -> PASS

    igt@kms_flip@blocking-absolute-wf_vblank-interruptible:
      shard-glk:          FAIL (fdo#106134) -> PASS

    igt@kms_flip@flip-vs-expired-vblank:
      shard-glk:          FAIL (fdo#105363) -> PASS

    igt@kms_sysfs_edid_timing:
      shard-apl:          WARN (fdo#100047) -> PASS

    
  fdo#100047 https://bugs.freedesktop.org/show_bug.cgi?id=100047
  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103207 https://bugs.freedesktop.org/show_bug.cgi?id=103207
  fdo#103313 https://bugs.freedesktop.org/show_bug.cgi?id=103313
  fdo#103558 https://bugs.freedesktop.org/show_bug.cgi?id=103558
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
  fdo#105602 https://bugs.freedesktop.org/show_bug.cgi?id=105602
  fdo#106134 https://bugs.freedesktop.org/show_bug.cgi?id=106134


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

    * Linux: CI_DRM_4172 -> Patchwork_8990

  CI_DRM_4172: b4c14c0809e8f6dba9a4fdf1a659cea5a98750d3 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4475: 35f08c12aa216d5b62a5b9984b575cee6905098f @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_8990: 10a97ddb0e4dcb864c09720da083c56bb23d513e @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4475: 3ba0657bff4216d1ec7179935590261855f1651e @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_8990/shards.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH] drm/i915: Shrink search list for active timelines
  2018-05-13 13:46 [PATCH] drm/i915: Shrink search list for active timelines Chris Wilson
  2018-05-13 14:20 ` ✓ Fi.CI.BAT: success for " Patchwork
  2018-05-13 15:07 ` ✓ Fi.CI.IGT: " Patchwork
@ 2018-05-15 13:42 ` Tvrtko Ursulin
  2018-05-15 13:48   ` Chris Wilson
  2018-05-15 14:31 ` [PATCH v2] " Chris Wilson
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 9+ messages in thread
From: Tvrtko Ursulin @ 2018-05-15 13:42 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx


On 13/05/2018 14:46, Chris Wilson wrote:
> When switching to the kernel context, we force the switch to occur after
> all currently active requests (so that we know the GPU won't switch
> immediately away and the kernel context remains current as we work). To
> do so we have to inspect all the timelines and add a fence from the
> active work to queue our switch afterwards. We can use the tracked set
> of active rings to shrink our search for active timelines.
> 
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> ---
>   drivers/gpu/drm/i915/i915_gem_context.c | 23 ++++++++++++-----------
>   1 file changed, 12 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
> index 33f8a4b3c981..48254483c4a6 100644
> --- a/drivers/gpu/drm/i915/i915_gem_context.c
> +++ b/drivers/gpu/drm/i915/i915_gem_context.c
> @@ -596,41 +596,42 @@ last_request_on_engine(struct i915_timeline *timeline,
>   
>   static bool engine_has_idle_kernel_context(struct intel_engine_cs *engine)
>   {
> -	struct i915_timeline *timeline;
> +	struct intel_ring *ring;
>   
> -	list_for_each_entry(timeline, &engine->i915->gt.timelines, link) {
> -		if (last_request_on_engine(timeline, engine))
> +	lockdep_assert_held(&engine->i915->drm.struct_mutex);
> +	list_for_each_entry(ring, &engine->i915->gt.active_rings, active_link) {
> +		if (last_request_on_engine(ring->timeline, engine))
>   			return false;
>   	}

Prettier if i915 passed directly to the function?

>   
>   	return intel_engine_has_kernel_context(engine);
>   }
>   
> -int i915_gem_switch_to_kernel_context(struct drm_i915_private *dev_priv)
> +int i915_gem_switch_to_kernel_context(struct drm_i915_private *i915)
>   {
>   	struct intel_engine_cs *engine;
> -	struct i915_timeline *timeline;
>   	enum intel_engine_id id;
>   
> -	lockdep_assert_held(&dev_priv->drm.struct_mutex);
> +	lockdep_assert_held(&i915->drm.struct_mutex);
>   
> -	i915_retire_requests(dev_priv);
> +	i915_retire_requests(i915);
>   
> -	for_each_engine(engine, dev_priv, id) {
> +	for_each_engine(engine, i915, id) {
> +		struct intel_ring *ring;
>   		struct i915_request *rq;
>   
>   		if (engine_has_idle_kernel_context(engine))
>   			continue;
>   
> -		rq = i915_request_alloc(engine, dev_priv->kernel_context);
> +		rq = i915_request_alloc(engine, i915->kernel_context);
>   		if (IS_ERR(rq))
>   			return PTR_ERR(rq);
>   
>   		/* Queue this switch after all other activity */
> -		list_for_each_entry(timeline, &dev_priv->gt.timelines, link) {
> +		list_for_each_entry(ring, &i915->gt.active_rings, active_link) {
>   			struct i915_request *prev;
>   
> -			prev = last_request_on_engine(timeline, engine);
> +			prev = last_request_on_engine(ring->timeline, engine);
>   			if (prev)
>   				i915_sw_fence_await_sw_fence_gfp(&rq->submit,
>   								 &prev->submit,
> 

Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>

Regards,

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

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

* Re: [PATCH] drm/i915: Shrink search list for active timelines
  2018-05-15 13:42 ` [PATCH] " Tvrtko Ursulin
@ 2018-05-15 13:48   ` Chris Wilson
  0 siblings, 0 replies; 9+ messages in thread
From: Chris Wilson @ 2018-05-15 13:48 UTC (permalink / raw)
  To: Tvrtko Ursulin, intel-gfx

Quoting Tvrtko Ursulin (2018-05-15 14:42:02)
> 
> On 13/05/2018 14:46, Chris Wilson wrote:
> > When switching to the kernel context, we force the switch to occur after
> > all currently active requests (so that we know the GPU won't switch
> > immediately away and the kernel context remains current as we work). To
> > do so we have to inspect all the timelines and add a fence from the
> > active work to queue our switch afterwards. We can use the tracked set
> > of active rings to shrink our search for active timelines.
> > 
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> > ---
> >   drivers/gpu/drm/i915/i915_gem_context.c | 23 ++++++++++++-----------
> >   1 file changed, 12 insertions(+), 11 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
> > index 33f8a4b3c981..48254483c4a6 100644
> > --- a/drivers/gpu/drm/i915/i915_gem_context.c
> > +++ b/drivers/gpu/drm/i915/i915_gem_context.c
> > @@ -596,41 +596,42 @@ last_request_on_engine(struct i915_timeline *timeline,
> >   
> >   static bool engine_has_idle_kernel_context(struct intel_engine_cs *engine)
> >   {
> > -     struct i915_timeline *timeline;
> > +     struct intel_ring *ring;
> >   
> > -     list_for_each_entry(timeline, &engine->i915->gt.timelines, link) {
> > -             if (last_request_on_engine(timeline, engine))
> > +     lockdep_assert_held(&engine->i915->drm.struct_mutex);
> > +     list_for_each_entry(ring, &engine->i915->gt.active_rings, active_link) {
> > +             if (last_request_on_engine(ring->timeline, engine))
> >                       return false;
> >       }
> 
> Prettier if i915 passed directly to the function?

A compromise would be to pull the list out into a local. Yes it is a bit
ugly, I just valued the function name more :)
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* [PATCH v2] drm/i915: Shrink search list for active timelines
  2018-05-13 13:46 [PATCH] drm/i915: Shrink search list for active timelines Chris Wilson
                   ` (2 preceding siblings ...)
  2018-05-15 13:42 ` [PATCH] " Tvrtko Ursulin
@ 2018-05-15 14:31 ` Chris Wilson
  2018-05-16  6:32   ` Chris Wilson
  2018-05-15 15:16 ` ✓ Fi.CI.BAT: success for drm/i915: Shrink search list for active timelines (rev2) Patchwork
  2018-05-16  1:23 ` ✓ Fi.CI.IGT: " Patchwork
  5 siblings, 1 reply; 9+ messages in thread
From: Chris Wilson @ 2018-05-15 14:31 UTC (permalink / raw)
  To: intel-gfx

When switching to the kernel context, we force the switch to occur after
all currently active requests (so that we know the GPU won't switch
immediately away and the kernel context remains current as we work). To
do so we have to inspect all the timelines and add a fence from the
active work to queue our switch afterwards. We can use the tracked set
of active rings to shrink our search for active timelines.

v2: Use a local to shrink the list_for_each_entry()

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
---
 drivers/gpu/drm/i915/i915_gem_context.c | 25 ++++++++++++++-----------
 1 file changed, 14 insertions(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
index 33f8a4b3c981..4bf18b5c6f1d 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
@@ -596,41 +596,44 @@ last_request_on_engine(struct i915_timeline *timeline,
 
 static bool engine_has_idle_kernel_context(struct intel_engine_cs *engine)
 {
-	struct i915_timeline *timeline;
+	struct list_head * const active_rings = &engine->i915->gt.active_rings;
+	struct intel_ring *ring;
 
-	list_for_each_entry(timeline, &engine->i915->gt.timelines, link) {
-		if (last_request_on_engine(timeline, engine))
+	lockdep_assert_held(&engine->i915->drm.struct_mutex);
+
+	list_for_each_entry(ring, active_rings, active_link) {
+		if (last_request_on_engine(ring->timeline, engine))
 			return false;
 	}
 
 	return intel_engine_has_kernel_context(engine);
 }
 
-int i915_gem_switch_to_kernel_context(struct drm_i915_private *dev_priv)
+int i915_gem_switch_to_kernel_context(struct drm_i915_private *i915)
 {
 	struct intel_engine_cs *engine;
-	struct i915_timeline *timeline;
 	enum intel_engine_id id;
 
-	lockdep_assert_held(&dev_priv->drm.struct_mutex);
+	lockdep_assert_held(&i915->drm.struct_mutex);
 
-	i915_retire_requests(dev_priv);
+	i915_retire_requests(i915);
 
-	for_each_engine(engine, dev_priv, id) {
+	for_each_engine(engine, i915, id) {
+		struct intel_ring *ring;
 		struct i915_request *rq;
 
 		if (engine_has_idle_kernel_context(engine))
 			continue;
 
-		rq = i915_request_alloc(engine, dev_priv->kernel_context);
+		rq = i915_request_alloc(engine, i915->kernel_context);
 		if (IS_ERR(rq))
 			return PTR_ERR(rq);
 
 		/* Queue this switch after all other activity */
-		list_for_each_entry(timeline, &dev_priv->gt.timelines, link) {
+		list_for_each_entry(ring, &i915->gt.active_rings, active_link) {
 			struct i915_request *prev;
 
-			prev = last_request_on_engine(timeline, engine);
+			prev = last_request_on_engine(ring->timeline, engine);
 			if (prev)
 				i915_sw_fence_await_sw_fence_gfp(&rq->submit,
 								 &prev->submit,
-- 
2.17.0

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

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

* ✓ Fi.CI.BAT: success for drm/i915: Shrink search list for active timelines (rev2)
  2018-05-13 13:46 [PATCH] drm/i915: Shrink search list for active timelines Chris Wilson
                   ` (3 preceding siblings ...)
  2018-05-15 14:31 ` [PATCH v2] " Chris Wilson
@ 2018-05-15 15:16 ` Patchwork
  2018-05-16  1:23 ` ✓ Fi.CI.IGT: " Patchwork
  5 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2018-05-15 15:16 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Shrink search list for active timelines (rev2)
URL   : https://patchwork.freedesktop.org/series/43102/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4186 -> Patchwork_9007 =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9007 need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9007, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/43102/revisions/2/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9007:

  === IGT changes ===

    ==== Warnings ====

    igt@gem_exec_gttfill@basic:
      fi-pnv-d510:        SKIP -> PASS

    
== Known issues ==

  Here are the changes found in Patchwork_9007 that come from known issues:

  === IGT changes ===

    ==== Possible fixes ====

    igt@gem_mmap_gtt@basic-small-bo-tiledx:
      fi-gdg-551:         FAIL (fdo#102575) -> PASS

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


== Participating hosts (41 -> 37) ==

  Additional (1): fi-bxt-dsi 
  Missing    (5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-skl-6700hq 


== Build changes ==

    * Linux: CI_DRM_4186 -> Patchwork_9007

  CI_DRM_4186: c03987223c762e4a61142f0a9be6027bb181cdfa @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4481: 94df67655566f18f05e599bb53a4090b598057f2 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9007: d787d108bde5483e60deadeb33ba17476521840e @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4481: 3ba0657bff4216d1ec7179935590261855f1651e @ git://anongit.freedesktop.org/piglit


== Linux commits ==

d787d108bde5 drm/i915: Shrink search list for active timelines

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9007/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* ✓ Fi.CI.IGT: success for drm/i915: Shrink search list for active timelines (rev2)
  2018-05-13 13:46 [PATCH] drm/i915: Shrink search list for active timelines Chris Wilson
                   ` (4 preceding siblings ...)
  2018-05-15 15:16 ` ✓ Fi.CI.BAT: success for drm/i915: Shrink search list for active timelines (rev2) Patchwork
@ 2018-05-16  1:23 ` Patchwork
  5 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2018-05-16  1:23 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Shrink search list for active timelines (rev2)
URL   : https://patchwork.freedesktop.org/series/43102/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4186_full -> Patchwork_9007_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9007_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9007_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/43102/revisions/2/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9007_full:

  === IGT changes ===

    ==== Warnings ====

    igt@gem_mocs_settings@mocs-rc6-ctx-dirty-render:
      shard-kbl:          PASS -> SKIP

    
== Known issues ==

  Here are the changes found in Patchwork_9007_full that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@gem_eio@in-flight-contexts-immediate:
      shard-hsw:          PASS -> DMESG-WARN (fdo#106523) +2

    igt@gem_eio@in-flight-immediate:
      shard-apl:          PASS -> DMESG-WARN (fdo#106523) +3

    igt@gem_eio@unwedge-stress:
      shard-glk:          PASS -> DMESG-WARN (fdo#106523) +1

    igt@kms_flip@2x-flip-vs-expired-vblank:
      shard-glk:          PASS -> FAIL (fdo#105707)

    igt@kms_flip@2x-plain-flip-ts-check:
      shard-hsw:          PASS -> FAIL (fdo#100368)

    igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible:
      shard-hsw:          PASS -> FAIL (fdo#103928)

    igt@kms_setmode@basic:
      shard-apl:          PASS -> FAIL (fdo#99912)

    
    ==== Possible fixes ====

    igt@drv_selftest@live_gtt:
      shard-apl:          INCOMPLETE (fdo#103927) -> PASS

    igt@drv_suspend@debugfs-reader:
      shard-snb:          DMESG-WARN (fdo#102365) -> PASS

    igt@gem_eio@in-flight-external:
      shard-glk:          DMESG-WARN (fdo#106523) -> PASS +1

    igt@gem_eio@in-flight-internal-10ms:
      shard-apl:          DMESG-WARN (fdo#106523) -> PASS +3

    igt@gem_eio@throttle:
      shard-hsw:          DMESG-WARN (fdo#106523) -> PASS +2

    igt@kms_atomic_transition@1x-modeset-transitions-nonblocking:
      shard-glk:          FAIL (fdo#105703) -> PASS

    igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic:
      shard-glk:          FAIL (fdo#105454) -> PASS

    igt@kms_flip@basic-flip-vs-modeset:
      shard-hsw:          DMESG-WARN (fdo#102614) -> PASS

    igt@kms_flip@dpms-vs-vblank-race:
      shard-hsw:          FAIL (fdo#103060) -> PASS

    igt@kms_flip@flip-vs-expired-vblank-interruptible:
      shard-glk:          FAIL (fdo#105363) -> PASS

    igt@kms_flip@plain-flip-fb-recreate-interruptible:
      shard-glk:          FAIL (fdo#100368) -> PASS

    igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-wc:
      shard-glk:          FAIL (fdo#104724, fdo#103167) -> PASS +1

    
  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#102365 https://bugs.freedesktop.org/show_bug.cgi?id=102365
  fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
  fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
  fdo#103928 https://bugs.freedesktop.org/show_bug.cgi?id=103928
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
  fdo#105454 https://bugs.freedesktop.org/show_bug.cgi?id=105454
  fdo#105703 https://bugs.freedesktop.org/show_bug.cgi?id=105703
  fdo#105707 https://bugs.freedesktop.org/show_bug.cgi?id=105707
  fdo#106523 https://bugs.freedesktop.org/show_bug.cgi?id=106523
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

    * Linux: CI_DRM_4186 -> Patchwork_9007

  CI_DRM_4186: c03987223c762e4a61142f0a9be6027bb181cdfa @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4481: 94df67655566f18f05e599bb53a4090b598057f2 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9007: d787d108bde5483e60deadeb33ba17476521840e @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4481: 3ba0657bff4216d1ec7179935590261855f1651e @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9007/shards.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH v2] drm/i915: Shrink search list for active timelines
  2018-05-15 14:31 ` [PATCH v2] " Chris Wilson
@ 2018-05-16  6:32   ` Chris Wilson
  0 siblings, 0 replies; 9+ messages in thread
From: Chris Wilson @ 2018-05-16  6:32 UTC (permalink / raw)
  To: intel-gfx

Quoting Chris Wilson (2018-05-15 15:31:49)
> When switching to the kernel context, we force the switch to occur after
> all currently active requests (so that we know the GPU won't switch
> immediately away and the kernel context remains current as we work). To
> do so we have to inspect all the timelines and add a fence from the
> active work to queue our switch afterwards. We can use the tracked set
> of active rings to shrink our search for active timelines.
> 
> v2: Use a local to shrink the list_for_each_entry()
> 
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>

And pushed, thanks kindly for the review.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

end of thread, other threads:[~2018-05-16  6:32 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-13 13:46 [PATCH] drm/i915: Shrink search list for active timelines Chris Wilson
2018-05-13 14:20 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-05-13 15:07 ` ✓ Fi.CI.IGT: " Patchwork
2018-05-15 13:42 ` [PATCH] " Tvrtko Ursulin
2018-05-15 13:48   ` Chris Wilson
2018-05-15 14:31 ` [PATCH v2] " Chris Wilson
2018-05-16  6:32   ` Chris Wilson
2018-05-15 15:16 ` ✓ Fi.CI.BAT: success for drm/i915: Shrink search list for active timelines (rev2) Patchwork
2018-05-16  1:23 ` ✓ Fi.CI.IGT: " Patchwork

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.