All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 15:46 ` Lionel Landwerlin
  0 siblings, 0 replies; 18+ messages in thread
From: Lionel Landwerlin @ 2019-11-13 15:46 UTC (permalink / raw)
  To: intel-gfx

I'm observing incoherence metric values, changing from run to run.

It appears the patches introducing noa wait & reconfiguration from
command stream switched places in the series multiple times during the
review. This lead to the dependency of one onto the order to go
missing...

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
---
 drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
index 507236bd41ae..31e47ee23357 100644
--- a/drivers/gpu/drm/i915/i915_perf.c
+++ b/drivers/gpu/drm/i915/i915_perf.c
@@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
 	config_length += num_lri_dwords(oa_config->mux_regs_len);
 	config_length += num_lri_dwords(oa_config->b_counter_regs_len);
 	config_length += num_lri_dwords(oa_config->flex_regs_len);
-	config_length++; /* MI_BATCH_BUFFER_END */
+	config_length += 3; /* MI_BATCH_BUFFER_START */
 	config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
 
 	obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
@@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
 			     oa_config->flex_regs,
 			     oa_config->flex_regs_len);
 
-	*cs++ = MI_BATCH_BUFFER_END;
+	/* Jump into the active wait. */
+	*cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
+		 MI_BATCH_BUFFER_START :
+		 MI_BATCH_BUFFER_START_GEN8);
+	*cs++ = i915_ggtt_offset(stream->noa_wait);
+	*cs++ = 0;
 
 	i915_gem_object_flush_map(obj);
 	i915_gem_object_unpin_map(obj);
-- 
2.24.0

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

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

* [Intel-gfx] [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 15:46 ` Lionel Landwerlin
  0 siblings, 0 replies; 18+ messages in thread
From: Lionel Landwerlin @ 2019-11-13 15:46 UTC (permalink / raw)
  To: intel-gfx

I'm observing incoherence metric values, changing from run to run.

It appears the patches introducing noa wait & reconfiguration from
command stream switched places in the series multiple times during the
review. This lead to the dependency of one onto the order to go
missing...

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
---
 drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
index 507236bd41ae..31e47ee23357 100644
--- a/drivers/gpu/drm/i915/i915_perf.c
+++ b/drivers/gpu/drm/i915/i915_perf.c
@@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
 	config_length += num_lri_dwords(oa_config->mux_regs_len);
 	config_length += num_lri_dwords(oa_config->b_counter_regs_len);
 	config_length += num_lri_dwords(oa_config->flex_regs_len);
-	config_length++; /* MI_BATCH_BUFFER_END */
+	config_length += 3; /* MI_BATCH_BUFFER_START */
 	config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
 
 	obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
@@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
 			     oa_config->flex_regs,
 			     oa_config->flex_regs_len);
 
-	*cs++ = MI_BATCH_BUFFER_END;
+	/* Jump into the active wait. */
+	*cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
+		 MI_BATCH_BUFFER_START :
+		 MI_BATCH_BUFFER_START_GEN8);
+	*cs++ = i915_ggtt_offset(stream->noa_wait);
+	*cs++ = 0;
 
 	i915_gem_object_flush_map(obj);
 	i915_gem_object_unpin_map(obj);
-- 
2.24.0

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

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

* Re: [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 16:35   ` Chris Wilson
  0 siblings, 0 replies; 18+ messages in thread
From: Chris Wilson @ 2019-11-13 16:35 UTC (permalink / raw)
  To: Lionel Landwerlin, intel-gfx

Quoting Lionel Landwerlin (2019-11-13 15:46:39)
> I'm observing incoherence metric values, changing from run to run.
> 
> It appears the patches introducing noa wait & reconfiguration from
> command stream switched places in the series multiple times during the
> review. This lead to the dependency of one onto the order to go
> missing...

I don't think I dropped it; if I did my apologies. I do feel the
egg-on-face for writing a selftest to verify that noa_wait does what you
said it did, but completely missing that it went unused :)
 
> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
> Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
> ---
>  drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
> index 507236bd41ae..31e47ee23357 100644
> --- a/drivers/gpu/drm/i915/i915_perf.c
> +++ b/drivers/gpu/drm/i915/i915_perf.c
> @@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
>         config_length += num_lri_dwords(oa_config->mux_regs_len);
>         config_length += num_lri_dwords(oa_config->b_counter_regs_len);
>         config_length += num_lri_dwords(oa_config->flex_regs_len);
> -       config_length++; /* MI_BATCH_BUFFER_END */
> +       config_length += 3; /* MI_BATCH_BUFFER_START */
>         config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
>  
>         obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
> @@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
>                              oa_config->flex_regs,
>                              oa_config->flex_regs_len);
>  
> -       *cs++ = MI_BATCH_BUFFER_END;
> +       /* Jump into the active wait. */
> +       *cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
> +                MI_BATCH_BUFFER_START :
> +                MI_BATCH_BUFFER_START_GEN8);
> +       *cs++ = i915_ggtt_offset(stream->noa_wait);
> +       *cs++ = 0;

Yikes, stream->noa_wait is unused.

Hmm, the noa_wait doesn't have any arbitration points internally, so we
probably do need to make it non-preemptable as well?

With a rq->flags |= I915_REQUEST_NOPREEMPT in emit_oa_config,
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>

We need to wrap emit_oa_config() in a similar selftest and verify
that a read of the oa regs are correct and that the TIMESTAMP indicates
the appropriate delay before the read. If you feel bored.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [Intel-gfx] [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 16:35   ` Chris Wilson
  0 siblings, 0 replies; 18+ messages in thread
From: Chris Wilson @ 2019-11-13 16:35 UTC (permalink / raw)
  To: Lionel Landwerlin, intel-gfx

Quoting Lionel Landwerlin (2019-11-13 15:46:39)
> I'm observing incoherence metric values, changing from run to run.
> 
> It appears the patches introducing noa wait & reconfiguration from
> command stream switched places in the series multiple times during the
> review. This lead to the dependency of one onto the order to go
> missing...

I don't think I dropped it; if I did my apologies. I do feel the
egg-on-face for writing a selftest to verify that noa_wait does what you
said it did, but completely missing that it went unused :)
 
> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
> Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
> ---
>  drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
> index 507236bd41ae..31e47ee23357 100644
> --- a/drivers/gpu/drm/i915/i915_perf.c
> +++ b/drivers/gpu/drm/i915/i915_perf.c
> @@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
>         config_length += num_lri_dwords(oa_config->mux_regs_len);
>         config_length += num_lri_dwords(oa_config->b_counter_regs_len);
>         config_length += num_lri_dwords(oa_config->flex_regs_len);
> -       config_length++; /* MI_BATCH_BUFFER_END */
> +       config_length += 3; /* MI_BATCH_BUFFER_START */
>         config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
>  
>         obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
> @@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
>                              oa_config->flex_regs,
>                              oa_config->flex_regs_len);
>  
> -       *cs++ = MI_BATCH_BUFFER_END;
> +       /* Jump into the active wait. */
> +       *cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
> +                MI_BATCH_BUFFER_START :
> +                MI_BATCH_BUFFER_START_GEN8);
> +       *cs++ = i915_ggtt_offset(stream->noa_wait);
> +       *cs++ = 0;

Yikes, stream->noa_wait is unused.

Hmm, the noa_wait doesn't have any arbitration points internally, so we
probably do need to make it non-preemptable as well?

With a rq->flags |= I915_REQUEST_NOPREEMPT in emit_oa_config,
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>

We need to wrap emit_oa_config() in a similar selftest and verify
that a read of the oa regs are correct and that the TIMESTAMP indicates
the appropriate delay before the read. If you feel bored.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* ✓ Fi.CI.BAT: success for drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 16:56   ` Patchwork
  0 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2019-11-13 16:56 UTC (permalink / raw)
  To: Lionel Landwerlin; +Cc: intel-gfx

== Series Details ==

Series: drm/i915/perf: don't forget noa wait after oa config
URL   : https://patchwork.freedesktop.org/series/69409/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_7331 -> Patchwork_15250
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/index.html

Known issues
------------

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_exec_suspend@basic-s0:
    - fi-skl-6770hq:      [PASS][1] -> [DMESG-WARN][2] ([fdo#105541])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-skl-6770hq/igt@gem_exec_suspend@basic-s0.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-skl-6770hq/igt@gem_exec_suspend@basic-s0.html

  * igt@i915_selftest@live_gt_heartbeat:
    - fi-cfl-8700k:       [PASS][3] -> [DMESG-FAIL][4] ([fdo#112096])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-cfl-8700k/igt@i915_selftest@live_gt_heartbeat.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-cfl-8700k/igt@i915_selftest@live_gt_heartbeat.html

  * igt@kms_chamelium@dp-edid-read:
    - fi-kbl-7500u:       [PASS][5] -> [WARN][6] ([fdo#109483])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-kbl-7500u/igt@kms_chamelium@dp-edid-read.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-kbl-7500u/igt@kms_chamelium@dp-edid-read.html

  
#### Possible fixes ####

  * igt@i915_module_load@reload-no-display:
    - fi-skl-lmem:        [DMESG-WARN][7] ([fdo#112261]) -> [PASS][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-skl-lmem/igt@i915_module_load@reload-no-display.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-skl-lmem/igt@i915_module_load@reload-no-display.html

  * igt@i915_module_load@reload-with-fault-injection:
    - {fi-kbl-7560u}:     [INCOMPLETE][9] ([fdo#109964] / [fdo#110343]) -> [PASS][10]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-kbl-7560u/igt@i915_module_load@reload-with-fault-injection.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-kbl-7560u/igt@i915_module_load@reload-with-fault-injection.html

  * igt@kms_chamelium@hdmi-crc-fast:
    - fi-icl-u2:          [FAIL][11] ([fdo#109635 ]) -> [PASS][12]
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-icl-u2/igt@kms_chamelium@hdmi-crc-fast.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-icl-u2/igt@kms_chamelium@hdmi-crc-fast.html

  * igt@kms_chamelium@hdmi-edid-read:
    - fi-kbl-7500u:       [FAIL][13] ([fdo#109483]) -> [PASS][14]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-kbl-7500u/igt@kms_chamelium@hdmi-edid-read.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-kbl-7500u/igt@kms_chamelium@hdmi-edid-read.html

  * igt@kms_frontbuffer_tracking@basic:
    - fi-icl-u2:          [FAIL][15] ([fdo#103167]) -> [PASS][16]
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
  [fdo#105541]: https://bugs.freedesktop.org/show_bug.cgi?id=105541
  [fdo#109483]: https://bugs.freedesktop.org/show_bug.cgi?id=109483
  [fdo#109635 ]: https://bugs.freedesktop.org/show_bug.cgi?id=109635 
  [fdo#109964]: https://bugs.freedesktop.org/show_bug.cgi?id=109964
  [fdo#110343]: https://bugs.freedesktop.org/show_bug.cgi?id=110343
  [fdo#112096]: https://bugs.freedesktop.org/show_bug.cgi?id=112096
  [fdo#112261]: https://bugs.freedesktop.org/show_bug.cgi?id=112261


Participating hosts (53 -> 45)
------------------------------

  Missing    (8): fi-ilk-m540 fi-tgl-u fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-byt-clapper fi-bdw-samus 


Build changes
-------------

  * CI: CI-20190529 -> None
  * Linux: CI_DRM_7331 -> Patchwork_15250

  CI-20190529: 20190529
  CI_DRM_7331: 4ea40d641218a45e90dd213b89a207ce8bec34dd @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_5276: 868d38c2bc075b6756ebed486db6e7152ed2c5be @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_15250: b43a5337ee5d797fa7cc87b4b1332fcf97bcc01e @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

b43a5337ee5d drm/i915/perf: don't forget noa wait after oa config

== Logs ==

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

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

* [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 16:56   ` Patchwork
  0 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2019-11-13 16:56 UTC (permalink / raw)
  To: Lionel Landwerlin; +Cc: intel-gfx

== Series Details ==

Series: drm/i915/perf: don't forget noa wait after oa config
URL   : https://patchwork.freedesktop.org/series/69409/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_7331 -> Patchwork_15250
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/index.html

Known issues
------------

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_exec_suspend@basic-s0:
    - fi-skl-6770hq:      [PASS][1] -> [DMESG-WARN][2] ([fdo#105541])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-skl-6770hq/igt@gem_exec_suspend@basic-s0.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-skl-6770hq/igt@gem_exec_suspend@basic-s0.html

  * igt@i915_selftest@live_gt_heartbeat:
    - fi-cfl-8700k:       [PASS][3] -> [DMESG-FAIL][4] ([fdo#112096])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-cfl-8700k/igt@i915_selftest@live_gt_heartbeat.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-cfl-8700k/igt@i915_selftest@live_gt_heartbeat.html

  * igt@kms_chamelium@dp-edid-read:
    - fi-kbl-7500u:       [PASS][5] -> [WARN][6] ([fdo#109483])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-kbl-7500u/igt@kms_chamelium@dp-edid-read.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-kbl-7500u/igt@kms_chamelium@dp-edid-read.html

  
#### Possible fixes ####

  * igt@i915_module_load@reload-no-display:
    - fi-skl-lmem:        [DMESG-WARN][7] ([fdo#112261]) -> [PASS][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-skl-lmem/igt@i915_module_load@reload-no-display.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-skl-lmem/igt@i915_module_load@reload-no-display.html

  * igt@i915_module_load@reload-with-fault-injection:
    - {fi-kbl-7560u}:     [INCOMPLETE][9] ([fdo#109964] / [fdo#110343]) -> [PASS][10]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-kbl-7560u/igt@i915_module_load@reload-with-fault-injection.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-kbl-7560u/igt@i915_module_load@reload-with-fault-injection.html

  * igt@kms_chamelium@hdmi-crc-fast:
    - fi-icl-u2:          [FAIL][11] ([fdo#109635 ]) -> [PASS][12]
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-icl-u2/igt@kms_chamelium@hdmi-crc-fast.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-icl-u2/igt@kms_chamelium@hdmi-crc-fast.html

  * igt@kms_chamelium@hdmi-edid-read:
    - fi-kbl-7500u:       [FAIL][13] ([fdo#109483]) -> [PASS][14]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-kbl-7500u/igt@kms_chamelium@hdmi-edid-read.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-kbl-7500u/igt@kms_chamelium@hdmi-edid-read.html

  * igt@kms_frontbuffer_tracking@basic:
    - fi-icl-u2:          [FAIL][15] ([fdo#103167]) -> [PASS][16]
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
  [fdo#105541]: https://bugs.freedesktop.org/show_bug.cgi?id=105541
  [fdo#109483]: https://bugs.freedesktop.org/show_bug.cgi?id=109483
  [fdo#109635 ]: https://bugs.freedesktop.org/show_bug.cgi?id=109635 
  [fdo#109964]: https://bugs.freedesktop.org/show_bug.cgi?id=109964
  [fdo#110343]: https://bugs.freedesktop.org/show_bug.cgi?id=110343
  [fdo#112096]: https://bugs.freedesktop.org/show_bug.cgi?id=112096
  [fdo#112261]: https://bugs.freedesktop.org/show_bug.cgi?id=112261


Participating hosts (53 -> 45)
------------------------------

  Missing    (8): fi-ilk-m540 fi-tgl-u fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-byt-clapper fi-bdw-samus 


Build changes
-------------

  * CI: CI-20190529 -> None
  * Linux: CI_DRM_7331 -> Patchwork_15250

  CI-20190529: 20190529
  CI_DRM_7331: 4ea40d641218a45e90dd213b89a207ce8bec34dd @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_5276: 868d38c2bc075b6756ebed486db6e7152ed2c5be @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_15250: b43a5337ee5d797fa7cc87b4b1332fcf97bcc01e @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

b43a5337ee5d drm/i915/perf: don't forget noa wait after oa config

== Logs ==

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

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

* Re: [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 18:07     ` Lionel Landwerlin
  0 siblings, 0 replies; 18+ messages in thread
From: Lionel Landwerlin @ 2019-11-13 18:07 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

On 13/11/2019 18:35, Chris Wilson wrote:
> Quoting Lionel Landwerlin (2019-11-13 15:46:39)
>> I'm observing incoherence metric values, changing from run to run.
>>
>> It appears the patches introducing noa wait & reconfiguration from
>> command stream switched places in the series multiple times during the
>> review. This lead to the dependency of one onto the order to go
>> missing...
> I don't think I dropped it; if I did my apologies. I do feel the
> egg-on-face for writing a selftest to verify that noa_wait does what you
> said it did, but completely missing that it went unused :)
>   
>> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
>> Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
>> ---
>>   drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
>>   1 file changed, 7 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
>> index 507236bd41ae..31e47ee23357 100644
>> --- a/drivers/gpu/drm/i915/i915_perf.c
>> +++ b/drivers/gpu/drm/i915/i915_perf.c
>> @@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
>>          config_length += num_lri_dwords(oa_config->mux_regs_len);
>>          config_length += num_lri_dwords(oa_config->b_counter_regs_len);
>>          config_length += num_lri_dwords(oa_config->flex_regs_len);
>> -       config_length++; /* MI_BATCH_BUFFER_END */
>> +       config_length += 3; /* MI_BATCH_BUFFER_START */
>>          config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
>>   
>>          obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
>> @@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
>>                               oa_config->flex_regs,
>>                               oa_config->flex_regs_len);
>>   
>> -       *cs++ = MI_BATCH_BUFFER_END;
>> +       /* Jump into the active wait. */
>> +       *cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
>> +                MI_BATCH_BUFFER_START :
>> +                MI_BATCH_BUFFER_START_GEN8);
>> +       *cs++ = i915_ggtt_offset(stream->noa_wait);
>> +       *cs++ = 0;
> Yikes, stream->noa_wait is unused.
>
> Hmm, the noa_wait doesn't have any arbitration points internally, so we
> probably do need to make it non-preemptable as well?
>
> With a rq->flags |= I915_REQUEST_NOPREEMPT in emit_oa_config,
> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
>
> We need to wrap emit_oa_config() in a similar selftest and verify
> that a read of the oa regs are correct and that the TIMESTAMP indicates
> the appropriate delay before the read. If you feel bored.
> -Chris


As long as we wait long enough, it should be okay.

Why making it nopreempt?


-Lionel

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

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

* Re: [Intel-gfx] [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 18:07     ` Lionel Landwerlin
  0 siblings, 0 replies; 18+ messages in thread
From: Lionel Landwerlin @ 2019-11-13 18:07 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

On 13/11/2019 18:35, Chris Wilson wrote:
> Quoting Lionel Landwerlin (2019-11-13 15:46:39)
>> I'm observing incoherence metric values, changing from run to run.
>>
>> It appears the patches introducing noa wait & reconfiguration from
>> command stream switched places in the series multiple times during the
>> review. This lead to the dependency of one onto the order to go
>> missing...
> I don't think I dropped it; if I did my apologies. I do feel the
> egg-on-face for writing a selftest to verify that noa_wait does what you
> said it did, but completely missing that it went unused :)
>   
>> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
>> Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
>> ---
>>   drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
>>   1 file changed, 7 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
>> index 507236bd41ae..31e47ee23357 100644
>> --- a/drivers/gpu/drm/i915/i915_perf.c
>> +++ b/drivers/gpu/drm/i915/i915_perf.c
>> @@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
>>          config_length += num_lri_dwords(oa_config->mux_regs_len);
>>          config_length += num_lri_dwords(oa_config->b_counter_regs_len);
>>          config_length += num_lri_dwords(oa_config->flex_regs_len);
>> -       config_length++; /* MI_BATCH_BUFFER_END */
>> +       config_length += 3; /* MI_BATCH_BUFFER_START */
>>          config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
>>   
>>          obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
>> @@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
>>                               oa_config->flex_regs,
>>                               oa_config->flex_regs_len);
>>   
>> -       *cs++ = MI_BATCH_BUFFER_END;
>> +       /* Jump into the active wait. */
>> +       *cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
>> +                MI_BATCH_BUFFER_START :
>> +                MI_BATCH_BUFFER_START_GEN8);
>> +       *cs++ = i915_ggtt_offset(stream->noa_wait);
>> +       *cs++ = 0;
> Yikes, stream->noa_wait is unused.
>
> Hmm, the noa_wait doesn't have any arbitration points internally, so we
> probably do need to make it non-preemptable as well?
>
> With a rq->flags |= I915_REQUEST_NOPREEMPT in emit_oa_config,
> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
>
> We need to wrap emit_oa_config() in a similar selftest and verify
> that a read of the oa regs are correct and that the TIMESTAMP indicates
> the appropriate delay before the read. If you feel bored.
> -Chris


As long as we wait long enough, it should be okay.

Why making it nopreempt?


-Lionel

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

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

* Re: [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 18:10       ` Chris Wilson
  0 siblings, 0 replies; 18+ messages in thread
From: Chris Wilson @ 2019-11-13 18:10 UTC (permalink / raw)
  To: Lionel Landwerlin, intel-gfx

Quoting Lionel Landwerlin (2019-11-13 18:07:59)
> On 13/11/2019 18:35, Chris Wilson wrote:
> > Quoting Lionel Landwerlin (2019-11-13 15:46:39)
> >> I'm observing incoherence metric values, changing from run to run.
> >>
> >> It appears the patches introducing noa wait & reconfiguration from
> >> command stream switched places in the series multiple times during the
> >> review. This lead to the dependency of one onto the order to go
> >> missing...
> > I don't think I dropped it; if I did my apologies. I do feel the
> > egg-on-face for writing a selftest to verify that noa_wait does what you
> > said it did, but completely missing that it went unused :)
> >   
> >> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
> >> Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
> >> ---
> >>   drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
> >>   1 file changed, 7 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
> >> index 507236bd41ae..31e47ee23357 100644
> >> --- a/drivers/gpu/drm/i915/i915_perf.c
> >> +++ b/drivers/gpu/drm/i915/i915_perf.c
> >> @@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
> >>          config_length += num_lri_dwords(oa_config->mux_regs_len);
> >>          config_length += num_lri_dwords(oa_config->b_counter_regs_len);
> >>          config_length += num_lri_dwords(oa_config->flex_regs_len);
> >> -       config_length++; /* MI_BATCH_BUFFER_END */
> >> +       config_length += 3; /* MI_BATCH_BUFFER_START */
> >>          config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
> >>   
> >>          obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
> >> @@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
> >>                               oa_config->flex_regs,
> >>                               oa_config->flex_regs_len);
> >>   
> >> -       *cs++ = MI_BATCH_BUFFER_END;
> >> +       /* Jump into the active wait. */
> >> +       *cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
> >> +                MI_BATCH_BUFFER_START :
> >> +                MI_BATCH_BUFFER_START_GEN8);
> >> +       *cs++ = i915_ggtt_offset(stream->noa_wait);
> >> +       *cs++ = 0;
> > Yikes, stream->noa_wait is unused.
> >
> > Hmm, the noa_wait doesn't have any arbitration points internally, so we
> > probably do need to make it non-preemptable as well?
> >
> > With a rq->flags |= I915_REQUEST_NOPREEMPT in emit_oa_config,
> > Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
> >
> > We need to wrap emit_oa_config() in a similar selftest and verify
> > that a read of the oa regs are correct and that the TIMESTAMP indicates
> > the appropriate delay before the read. If you feel bored.
> > -Chris
> 
> 
> As long as we wait long enough, it should be okay.
> 
> Why making it nopreempt?

Aiui, the batch buffer has no arbitration points so the delay may incur
the wrath of the forced preemption. That is another request (of higher
priority) wishing to run, but not being able to.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [Intel-gfx] [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 18:10       ` Chris Wilson
  0 siblings, 0 replies; 18+ messages in thread
From: Chris Wilson @ 2019-11-13 18:10 UTC (permalink / raw)
  To: Lionel Landwerlin, intel-gfx

Quoting Lionel Landwerlin (2019-11-13 18:07:59)
> On 13/11/2019 18:35, Chris Wilson wrote:
> > Quoting Lionel Landwerlin (2019-11-13 15:46:39)
> >> I'm observing incoherence metric values, changing from run to run.
> >>
> >> It appears the patches introducing noa wait & reconfiguration from
> >> command stream switched places in the series multiple times during the
> >> review. This lead to the dependency of one onto the order to go
> >> missing...
> > I don't think I dropped it; if I did my apologies. I do feel the
> > egg-on-face for writing a selftest to verify that noa_wait does what you
> > said it did, but completely missing that it went unused :)
> >   
> >> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
> >> Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
> >> ---
> >>   drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
> >>   1 file changed, 7 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
> >> index 507236bd41ae..31e47ee23357 100644
> >> --- a/drivers/gpu/drm/i915/i915_perf.c
> >> +++ b/drivers/gpu/drm/i915/i915_perf.c
> >> @@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
> >>          config_length += num_lri_dwords(oa_config->mux_regs_len);
> >>          config_length += num_lri_dwords(oa_config->b_counter_regs_len);
> >>          config_length += num_lri_dwords(oa_config->flex_regs_len);
> >> -       config_length++; /* MI_BATCH_BUFFER_END */
> >> +       config_length += 3; /* MI_BATCH_BUFFER_START */
> >>          config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
> >>   
> >>          obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
> >> @@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
> >>                               oa_config->flex_regs,
> >>                               oa_config->flex_regs_len);
> >>   
> >> -       *cs++ = MI_BATCH_BUFFER_END;
> >> +       /* Jump into the active wait. */
> >> +       *cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
> >> +                MI_BATCH_BUFFER_START :
> >> +                MI_BATCH_BUFFER_START_GEN8);
> >> +       *cs++ = i915_ggtt_offset(stream->noa_wait);
> >> +       *cs++ = 0;
> > Yikes, stream->noa_wait is unused.
> >
> > Hmm, the noa_wait doesn't have any arbitration points internally, so we
> > probably do need to make it non-preemptable as well?
> >
> > With a rq->flags |= I915_REQUEST_NOPREEMPT in emit_oa_config,
> > Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
> >
> > We need to wrap emit_oa_config() in a similar selftest and verify
> > that a read of the oa regs are correct and that the TIMESTAMP indicates
> > the appropriate delay before the read. If you feel bored.
> > -Chris
> 
> 
> As long as we wait long enough, it should be okay.
> 
> Why making it nopreempt?

Aiui, the batch buffer has no arbitration points so the delay may incur
the wrath of the forced preemption. That is another request (of higher
priority) wishing to run, but not being able to.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 18:11         ` Chris Wilson
  0 siblings, 0 replies; 18+ messages in thread
From: Chris Wilson @ 2019-11-13 18:11 UTC (permalink / raw)
  To: Lionel Landwerlin, intel-gfx

Quoting Chris Wilson (2019-11-13 18:10:22)
> Quoting Lionel Landwerlin (2019-11-13 18:07:59)
> > On 13/11/2019 18:35, Chris Wilson wrote:
> > > Quoting Lionel Landwerlin (2019-11-13 15:46:39)
> > >> I'm observing incoherence metric values, changing from run to run.
> > >>
> > >> It appears the patches introducing noa wait & reconfiguration from
> > >> command stream switched places in the series multiple times during the
> > >> review. This lead to the dependency of one onto the order to go
> > >> missing...
> > > I don't think I dropped it; if I did my apologies. I do feel the
> > > egg-on-face for writing a selftest to verify that noa_wait does what you
> > > said it did, but completely missing that it went unused :)
> > >   
> > >> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
> > >> Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
> > >> ---
> > >>   drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
> > >>   1 file changed, 7 insertions(+), 2 deletions(-)
> > >>
> > >> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
> > >> index 507236bd41ae..31e47ee23357 100644
> > >> --- a/drivers/gpu/drm/i915/i915_perf.c
> > >> +++ b/drivers/gpu/drm/i915/i915_perf.c
> > >> @@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
> > >>          config_length += num_lri_dwords(oa_config->mux_regs_len);
> > >>          config_length += num_lri_dwords(oa_config->b_counter_regs_len);
> > >>          config_length += num_lri_dwords(oa_config->flex_regs_len);
> > >> -       config_length++; /* MI_BATCH_BUFFER_END */
> > >> +       config_length += 3; /* MI_BATCH_BUFFER_START */
> > >>          config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
> > >>   
> > >>          obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
> > >> @@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
> > >>                               oa_config->flex_regs,
> > >>                               oa_config->flex_regs_len);
> > >>   
> > >> -       *cs++ = MI_BATCH_BUFFER_END;
> > >> +       /* Jump into the active wait. */
> > >> +       *cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
> > >> +                MI_BATCH_BUFFER_START :
> > >> +                MI_BATCH_BUFFER_START_GEN8);
> > >> +       *cs++ = i915_ggtt_offset(stream->noa_wait);
> > >> +       *cs++ = 0;
> > > Yikes, stream->noa_wait is unused.
> > >
> > > Hmm, the noa_wait doesn't have any arbitration points internally, so we
> > > probably do need to make it non-preemptable as well?
> > >
> > > With a rq->flags |= I915_REQUEST_NOPREEMPT in emit_oa_config,
> > > Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
> > >
> > > We need to wrap emit_oa_config() in a similar selftest and verify
> > > that a read of the oa regs are correct and that the TIMESTAMP indicates
> > > the appropriate delay before the read. If you feel bored.
> > > -Chris
> > 
> > 
> > As long as we wait long enough, it should be okay.
> > 
> > Why making it nopreempt?
> 
> Aiui, the batch buffer has no arbitration points so the delay may incur
> the wrath of the forced preemption. That is another request (of higher
> priority) wishing to run, but not being able to.

The alternative would be adding a MI_ARB_CHECK at the start of the loop
if you happy with being preempted out.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [Intel-gfx] [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 18:11         ` Chris Wilson
  0 siblings, 0 replies; 18+ messages in thread
From: Chris Wilson @ 2019-11-13 18:11 UTC (permalink / raw)
  To: Lionel Landwerlin, intel-gfx

Quoting Chris Wilson (2019-11-13 18:10:22)
> Quoting Lionel Landwerlin (2019-11-13 18:07:59)
> > On 13/11/2019 18:35, Chris Wilson wrote:
> > > Quoting Lionel Landwerlin (2019-11-13 15:46:39)
> > >> I'm observing incoherence metric values, changing from run to run.
> > >>
> > >> It appears the patches introducing noa wait & reconfiguration from
> > >> command stream switched places in the series multiple times during the
> > >> review. This lead to the dependency of one onto the order to go
> > >> missing...
> > > I don't think I dropped it; if I did my apologies. I do feel the
> > > egg-on-face for writing a selftest to verify that noa_wait does what you
> > > said it did, but completely missing that it went unused :)
> > >   
> > >> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
> > >> Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
> > >> ---
> > >>   drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
> > >>   1 file changed, 7 insertions(+), 2 deletions(-)
> > >>
> > >> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
> > >> index 507236bd41ae..31e47ee23357 100644
> > >> --- a/drivers/gpu/drm/i915/i915_perf.c
> > >> +++ b/drivers/gpu/drm/i915/i915_perf.c
> > >> @@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
> > >>          config_length += num_lri_dwords(oa_config->mux_regs_len);
> > >>          config_length += num_lri_dwords(oa_config->b_counter_regs_len);
> > >>          config_length += num_lri_dwords(oa_config->flex_regs_len);
> > >> -       config_length++; /* MI_BATCH_BUFFER_END */
> > >> +       config_length += 3; /* MI_BATCH_BUFFER_START */
> > >>          config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
> > >>   
> > >>          obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
> > >> @@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
> > >>                               oa_config->flex_regs,
> > >>                               oa_config->flex_regs_len);
> > >>   
> > >> -       *cs++ = MI_BATCH_BUFFER_END;
> > >> +       /* Jump into the active wait. */
> > >> +       *cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
> > >> +                MI_BATCH_BUFFER_START :
> > >> +                MI_BATCH_BUFFER_START_GEN8);
> > >> +       *cs++ = i915_ggtt_offset(stream->noa_wait);
> > >> +       *cs++ = 0;
> > > Yikes, stream->noa_wait is unused.
> > >
> > > Hmm, the noa_wait doesn't have any arbitration points internally, so we
> > > probably do need to make it non-preemptable as well?
> > >
> > > With a rq->flags |= I915_REQUEST_NOPREEMPT in emit_oa_config,
> > > Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
> > >
> > > We need to wrap emit_oa_config() in a similar selftest and verify
> > > that a read of the oa regs are correct and that the TIMESTAMP indicates
> > > the appropriate delay before the read. If you feel bored.
> > > -Chris
> > 
> > 
> > As long as we wait long enough, it should be okay.
> > 
> > Why making it nopreempt?
> 
> Aiui, the batch buffer has no arbitration points so the delay may incur
> the wrath of the forced preemption. That is another request (of higher
> priority) wishing to run, but not being able to.

The alternative would be adding a MI_ARB_CHECK at the start of the loop
if you happy with being preempted out.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 18:33           ` Lionel Landwerlin
  0 siblings, 0 replies; 18+ messages in thread
From: Lionel Landwerlin @ 2019-11-13 18:33 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

On 13/11/2019 20:11, Chris Wilson wrote:
> Quoting Chris Wilson (2019-11-13 18:10:22)
>> Quoting Lionel Landwerlin (2019-11-13 18:07:59)
>>> On 13/11/2019 18:35, Chris Wilson wrote:
>>>> Quoting Lionel Landwerlin (2019-11-13 15:46:39)
>>>>> I'm observing incoherence metric values, changing from run to run.
>>>>>
>>>>> It appears the patches introducing noa wait & reconfiguration from
>>>>> command stream switched places in the series multiple times during the
>>>>> review. This lead to the dependency of one onto the order to go
>>>>> missing...
>>>> I don't think I dropped it; if I did my apologies. I do feel the
>>>> egg-on-face for writing a selftest to verify that noa_wait does what you
>>>> said it did, but completely missing that it went unused :)


It was probably my mistake :)


>>>>    
>>>>> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
>>>>> Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
>>>>> ---
>>>>>    drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
>>>>>    1 file changed, 7 insertions(+), 2 deletions(-)
>>>>>
>>>>> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
>>>>> index 507236bd41ae..31e47ee23357 100644
>>>>> --- a/drivers/gpu/drm/i915/i915_perf.c
>>>>> +++ b/drivers/gpu/drm/i915/i915_perf.c
>>>>> @@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
>>>>>           config_length += num_lri_dwords(oa_config->mux_regs_len);
>>>>>           config_length += num_lri_dwords(oa_config->b_counter_regs_len);
>>>>>           config_length += num_lri_dwords(oa_config->flex_regs_len);
>>>>> -       config_length++; /* MI_BATCH_BUFFER_END */
>>>>> +       config_length += 3; /* MI_BATCH_BUFFER_START */
>>>>>           config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
>>>>>    
>>>>>           obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
>>>>> @@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
>>>>>                                oa_config->flex_regs,
>>>>>                                oa_config->flex_regs_len);
>>>>>    
>>>>> -       *cs++ = MI_BATCH_BUFFER_END;
>>>>> +       /* Jump into the active wait. */
>>>>> +       *cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
>>>>> +                MI_BATCH_BUFFER_START :
>>>>> +                MI_BATCH_BUFFER_START_GEN8);
>>>>> +       *cs++ = i915_ggtt_offset(stream->noa_wait);
>>>>> +       *cs++ = 0;
>>>> Yikes, stream->noa_wait is unused.
>>>>
>>>> Hmm, the noa_wait doesn't have any arbitration points internally, so we
>>>> probably do need to make it non-preemptable as well?
>>>>
>>>> With a rq->flags |= I915_REQUEST_NOPREEMPT in emit_oa_config,
>>>> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
>>>>
>>>> We need to wrap emit_oa_config() in a similar selftest and verify
>>>> that a read of the oa regs are correct and that the TIMESTAMP indicates
>>>> the appropriate delay before the read. If you feel bored.
>>>> -Chris
>>>
>>> As long as we wait long enough, it should be okay.
>>>
>>> Why making it nopreempt?
>> Aiui, the batch buffer has no arbitration points so the delay may incur
>> the wrath of the forced preemption. That is another request (of higher
>> priority) wishing to run, but not being able to.
> The alternative would be adding a MI_ARB_CHECK at the start of the loop
> if you happy with being preempted out.
> -Chris

I guess I'll do that :)


-Lionel

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

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

* Re: [Intel-gfx] [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-13 18:33           ` Lionel Landwerlin
  0 siblings, 0 replies; 18+ messages in thread
From: Lionel Landwerlin @ 2019-11-13 18:33 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

On 13/11/2019 20:11, Chris Wilson wrote:
> Quoting Chris Wilson (2019-11-13 18:10:22)
>> Quoting Lionel Landwerlin (2019-11-13 18:07:59)
>>> On 13/11/2019 18:35, Chris Wilson wrote:
>>>> Quoting Lionel Landwerlin (2019-11-13 15:46:39)
>>>>> I'm observing incoherence metric values, changing from run to run.
>>>>>
>>>>> It appears the patches introducing noa wait & reconfiguration from
>>>>> command stream switched places in the series multiple times during the
>>>>> review. This lead to the dependency of one onto the order to go
>>>>> missing...
>>>> I don't think I dropped it; if I did my apologies. I do feel the
>>>> egg-on-face for writing a selftest to verify that noa_wait does what you
>>>> said it did, but completely missing that it went unused :)


It was probably my mistake :)


>>>>    
>>>>> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
>>>>> Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
>>>>> ---
>>>>>    drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
>>>>>    1 file changed, 7 insertions(+), 2 deletions(-)
>>>>>
>>>>> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
>>>>> index 507236bd41ae..31e47ee23357 100644
>>>>> --- a/drivers/gpu/drm/i915/i915_perf.c
>>>>> +++ b/drivers/gpu/drm/i915/i915_perf.c
>>>>> @@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
>>>>>           config_length += num_lri_dwords(oa_config->mux_regs_len);
>>>>>           config_length += num_lri_dwords(oa_config->b_counter_regs_len);
>>>>>           config_length += num_lri_dwords(oa_config->flex_regs_len);
>>>>> -       config_length++; /* MI_BATCH_BUFFER_END */
>>>>> +       config_length += 3; /* MI_BATCH_BUFFER_START */
>>>>>           config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
>>>>>    
>>>>>           obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
>>>>> @@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
>>>>>                                oa_config->flex_regs,
>>>>>                                oa_config->flex_regs_len);
>>>>>    
>>>>> -       *cs++ = MI_BATCH_BUFFER_END;
>>>>> +       /* Jump into the active wait. */
>>>>> +       *cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
>>>>> +                MI_BATCH_BUFFER_START :
>>>>> +                MI_BATCH_BUFFER_START_GEN8);
>>>>> +       *cs++ = i915_ggtt_offset(stream->noa_wait);
>>>>> +       *cs++ = 0;
>>>> Yikes, stream->noa_wait is unused.
>>>>
>>>> Hmm, the noa_wait doesn't have any arbitration points internally, so we
>>>> probably do need to make it non-preemptable as well?
>>>>
>>>> With a rq->flags |= I915_REQUEST_NOPREEMPT in emit_oa_config,
>>>> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
>>>>
>>>> We need to wrap emit_oa_config() in a similar selftest and verify
>>>> that a read of the oa regs are correct and that the TIMESTAMP indicates
>>>> the appropriate delay before the read. If you feel bored.
>>>> -Chris
>>>
>>> As long as we wait long enough, it should be okay.
>>>
>>> Why making it nopreempt?
>> Aiui, the batch buffer has no arbitration points so the delay may incur
>> the wrath of the forced preemption. That is another request (of higher
>> priority) wishing to run, but not being able to.
> The alternative would be adding a MI_ARB_CHECK at the start of the loop
> if you happy with being preempted out.
> -Chris

I guess I'll do that :)


-Lionel

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

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

* ✓ Fi.CI.IGT: success for drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-14  6:44   ` Patchwork
  0 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2019-11-14  6:44 UTC (permalink / raw)
  To: Lionel Landwerlin; +Cc: intel-gfx

== Series Details ==

Series: drm/i915/perf: don't forget noa wait after oa config
URL   : https://patchwork.freedesktop.org/series/69409/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_7331_full -> Patchwork_15250_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Known issues
------------

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_ctx_persistence@vcs1-queued:
    - shard-iclb:         [PASS][1] -> [SKIP][2] ([fdo#109276] / [fdo#112080]) +4 similar issues
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb1/igt@gem_ctx_persistence@vcs1-queued.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb3/igt@gem_ctx_persistence@vcs1-queued.html

  * igt@gem_ctx_switch@all-light:
    - shard-tglb:         [PASS][3] -> [INCOMPLETE][4] ([fdo#111672])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb4/igt@gem_ctx_switch@all-light.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb6/igt@gem_ctx_switch@all-light.html

  * igt@gem_eio@in-flight-contexts-immediate:
    - shard-tglb:         [PASS][5] -> [INCOMPLETE][6] ([fdo#112081])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb5/igt@gem_eio@in-flight-contexts-immediate.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb6/igt@gem_eio@in-flight-contexts-immediate.html

  * igt@gem_exec_balancer@smoke:
    - shard-iclb:         [PASS][7] -> [SKIP][8] ([fdo#110854])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb4/igt@gem_exec_balancer@smoke.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb7/igt@gem_exec_balancer@smoke.html

  * igt@gem_exec_schedule@preempt-queue-contexts-chain-blt:
    - shard-tglb:         [PASS][9] -> [INCOMPLETE][10] ([fdo#111606] / [fdo#111677])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb2/igt@gem_exec_schedule@preempt-queue-contexts-chain-blt.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb6/igt@gem_exec_schedule@preempt-queue-contexts-chain-blt.html

  * igt@gem_exec_schedule@promotion-bsd:
    - shard-iclb:         [PASS][11] -> [SKIP][12] ([fdo#112146])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb7/igt@gem_exec_schedule@promotion-bsd.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb1/igt@gem_exec_schedule@promotion-bsd.html

  * igt@gem_exec_suspend@basic-s0:
    - shard-tglb:         [PASS][13] -> [INCOMPLETE][14] ([fdo#111832])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb9/igt@gem_exec_suspend@basic-s0.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb3/igt@gem_exec_suspend@basic-s0.html

  * igt@gem_userptr_blits@dmabuf-sync:
    - shard-snb:          [PASS][15] -> [DMESG-WARN][16] ([fdo#111870]) +1 similar issue
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-snb2/igt@gem_userptr_blits@dmabuf-sync.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-snb6/igt@gem_userptr_blits@dmabuf-sync.html

  * igt@gem_userptr_blits@map-fixed-invalidate-busy-gup:
    - shard-hsw:          [PASS][17] -> [DMESG-WARN][18] ([fdo#111870]) +2 similar issues
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-hsw5/igt@gem_userptr_blits@map-fixed-invalidate-busy-gup.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-hsw5/igt@gem_userptr_blits@map-fixed-invalidate-busy-gup.html

  * igt@gem_workarounds@suspend-resume-context:
    - shard-tglb:         [PASS][19] -> [INCOMPLETE][20] ([fdo#111832] / [fdo#111850]) +2 similar issues
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb6/igt@gem_workarounds@suspend-resume-context.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb5/igt@gem_workarounds@suspend-resume-context.html

  * igt@i915_selftest@live_gt_timelines:
    - shard-tglb:         [PASS][21] -> [INCOMPLETE][22] ([fdo#111831])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb9/igt@i915_selftest@live_gt_timelines.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb7/igt@i915_selftest@live_gt_timelines.html

  * igt@i915_selftest@live_perf:
    - shard-hsw:          [PASS][23] -> [INCOMPLETE][24] ([fdo#103540])
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-hsw4/igt@i915_selftest@live_perf.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-hsw1/igt@i915_selftest@live_perf.html

  * igt@kms_cursor_crc@pipe-a-cursor-suspend:
    - shard-kbl:          [PASS][25] -> [DMESG-WARN][26] ([fdo#108566]) +6 similar issues
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-kbl6/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-kbl3/igt@kms_cursor_crc@pipe-a-cursor-suspend.html

  * igt@kms_draw_crc@draw-method-xrgb8888-pwrite-xtiled:
    - shard-skl:          [PASS][27] -> [FAIL][28] ([fdo#103184] / [fdo#103232])
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl10/igt@kms_draw_crc@draw-method-xrgb8888-pwrite-xtiled.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl8/igt@kms_draw_crc@draw-method-xrgb8888-pwrite-xtiled.html

  * igt@kms_flip@flip-vs-expired-vblank:
    - shard-skl:          [PASS][29] -> [FAIL][30] ([fdo#105363])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl1/igt@kms_flip@flip-vs-expired-vblank.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl1/igt@kms_flip@flip-vs-expired-vblank.html

  * igt@kms_flip@flip-vs-suspend-interruptible:
    - shard-tglb:         [PASS][31] -> [INCOMPLETE][32] ([fdo#111832] / [fdo#111850] / [fdo#112031])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb9/igt@kms_flip@flip-vs-suspend-interruptible.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb9/igt@kms_flip@flip-vs-suspend-interruptible.html

  * igt@kms_flip_tiling@flip-to-y-tiled:
    - shard-skl:          [PASS][33] -> [FAIL][34] ([fdo#107931] / [fdo#108134])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl3/igt@kms_flip_tiling@flip-to-y-tiled.html
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl8/igt@kms_flip_tiling@flip-to-y-tiled.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-plflip-blt:
    - shard-tglb:         [PASS][35] -> [FAIL][36] ([fdo#103167]) +2 similar issues
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-plflip-blt.html
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb5/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite:
    - shard-iclb:         [PASS][37] -> [FAIL][38] ([fdo#103167]) +3 similar issues
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb2/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite.html

  * igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min:
    - shard-skl:          [PASS][39] -> [FAIL][40] ([fdo#108145]) +1 similar issue
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl8/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl2/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html

  * igt@kms_psr@psr2_sprite_blt:
    - shard-iclb:         [PASS][41] -> [SKIP][42] ([fdo#109441]) +2 similar issues
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb2/igt@kms_psr@psr2_sprite_blt.html
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb8/igt@kms_psr@psr2_sprite_blt.html

  * igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend:
    - shard-skl:          [PASS][43] -> [INCOMPLETE][44] ([fdo#104108])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl3/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl8/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html

  * igt@perf_pmu@busy-check-all-vcs1:
    - shard-iclb:         [PASS][45] -> [SKIP][46] ([fdo#112080]) +7 similar issues
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb4/igt@perf_pmu@busy-check-all-vcs1.html
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb7/igt@perf_pmu@busy-check-all-vcs1.html

  * igt@prime_vgem@fence-wait-bsd2:
    - shard-iclb:         [PASS][47] -> [SKIP][48] ([fdo#109276]) +17 similar issues
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb4/igt@prime_vgem@fence-wait-bsd2.html
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb7/igt@prime_vgem@fence-wait-bsd2.html

  
#### Possible fixes ####

  * igt@gem_ctx_exec@basic-invalid-context-vcs1:
    - shard-iclb:         [SKIP][49] ([fdo#112080]) -> [PASS][50] +9 similar issues
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb8/igt@gem_ctx_exec@basic-invalid-context-vcs1.html
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb2/igt@gem_ctx_exec@basic-invalid-context-vcs1.html

  * igt@gem_ctx_isolation@vcs1-dirty-create:
    - shard-iclb:         [SKIP][51] ([fdo#109276] / [fdo#112080]) -> [PASS][52] +1 similar issue
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb7/igt@gem_ctx_isolation@vcs1-dirty-create.html
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb4/igt@gem_ctx_isolation@vcs1-dirty-create.html

  * igt@gem_exec_schedule@preempt-other-chain-bsd:
    - shard-iclb:         [SKIP][53] ([fdo#112146]) -> [PASS][54] +3 similar issues
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb2/igt@gem_exec_schedule@preempt-other-chain-bsd.html
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb5/igt@gem_exec_schedule@preempt-other-chain-bsd.html

  * igt@gem_exec_schedule@preempt-queue-contexts-render:
    - shard-tglb:         [INCOMPLETE][55] ([fdo#111606] / [fdo#111677]) -> [PASS][56]
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb6/igt@gem_exec_schedule@preempt-queue-contexts-render.html
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb2/igt@gem_exec_schedule@preempt-queue-contexts-render.html

  * igt@gem_persistent_relocs@forked-interruptible-thrashing:
    - shard-tglb:         [FAIL][57] ([fdo#112037]) -> [PASS][58]
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb8/igt@gem_persistent_relocs@forked-interruptible-thrashing.html
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb2/igt@gem_persistent_relocs@forked-interruptible-thrashing.html

  * igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy:
    - shard-hsw:          [DMESG-WARN][59] ([fdo#111870]) -> [PASS][60] +2 similar issues
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-hsw5/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy.html
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-hsw2/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy.html

  * igt@gem_userptr_blits@sync-unmap-cycles:
    - shard-snb:          [DMESG-WARN][61] ([fdo#111870]) -> [PASS][62] +1 similar issue
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-snb6/igt@gem_userptr_blits@sync-unmap-cycles.html
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-snb2/igt@gem_userptr_blits@sync-unmap-cycles.html

  * igt@gem_workarounds@suspend-resume-fd:
    - shard-kbl:          [DMESG-WARN][63] ([fdo#108566]) -> [PASS][64] +2 similar issues
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-kbl1/igt@gem_workarounds@suspend-resume-fd.html
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-kbl6/igt@gem_workarounds@suspend-resume-fd.html

  * igt@i915_pm_dc@dc6-psr:
    - shard-iclb:         [FAIL][65] ([fdo#111830 ]) -> [PASS][66]
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb4/igt@i915_pm_dc@dc6-psr.html
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb7/igt@i915_pm_dc@dc6-psr.html

  * igt@i915_suspend@fence-restore-tiled2untiled:
    - shard-tglb:         [INCOMPLETE][67] ([fdo#111832] / [fdo#111850]) -> [PASS][68] +2 similar issues
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb8/igt@i915_suspend@fence-restore-tiled2untiled.html
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb9/igt@i915_suspend@fence-restore-tiled2untiled.html

  * igt@kms_color@pipe-a-ctm-0-5:
    - shard-skl:          [FAIL][69] ([fdo#108682]) -> [PASS][70]
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl3/igt@kms_color@pipe-a-ctm-0-5.html
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl8/igt@kms_color@pipe-a-ctm-0-5.html

  * igt@kms_fbcon_fbt@psr-suspend:
    - shard-skl:          [INCOMPLETE][71] ([fdo#104108]) -> [PASS][72]
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl3/igt@kms_fbcon_fbt@psr-suspend.html
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl6/igt@kms_fbcon_fbt@psr-suspend.html

  * igt@kms_flip@flip-vs-suspend:
    - shard-apl:          [DMESG-WARN][73] ([fdo#108566]) -> [PASS][74]
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-apl4/igt@kms_flip@flip-vs-suspend.html
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-apl8/igt@kms_flip@flip-vs-suspend.html

  * igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw:
    - shard-iclb:         [FAIL][75] ([fdo#103167]) -> [PASS][76] +4 similar issues
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb1/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb4/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-pwrite:
    - shard-tglb:         [FAIL][77] ([fdo#103167]) -> [PASS][78] +2 similar issues
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-pwrite.html
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb4/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-pwrite.html

  * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
    - shard-skl:          [FAIL][79] ([fdo#108145] / [fdo#110403]) -> [PASS][80] +1 similar issue
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl4/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl2/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html

  * igt@kms_psr@psr2_sprite_mmap_gtt:
    - shard-iclb:         [SKIP][81] ([fdo#109441]) -> [PASS][82] +1 similar issue
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb8/igt@kms_psr@psr2_sprite_mmap_gtt.html
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb2/igt@kms_psr@psr2_sprite_mmap_gtt.html

  * igt@kms_setmode@basic:
    - shard-hsw:          [FAIL][83] ([fdo#99912]) -> [PASS][84]
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-hsw7/igt@kms_setmode@basic.html
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-hsw6/igt@kms_setmode@basic.html

  * igt@prime_busy@after-bsd2:
    - shard-iclb:         [SKIP][85] ([fdo#109276]) -> [PASS][86] +14 similar issues
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb3/igt@prime_busy@after-bsd2.html
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb1/igt@prime_busy@after-bsd2.html

  
#### Warnings ####

  * igt@gem_eio@kms:
    - shard-snb:          [DMESG-WARN][87] ([fdo# 112000 ] / [fdo#111781]) -> [FAIL][88] ([fdo#111757])
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-snb6/igt@gem_eio@kms.html
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-snb4/igt@gem_eio@kms.html

  * igt@gem_exec_schedule@deep-bsd2:
    - shard-tglb:         [INCOMPLETE][89] ([fdo#111671]) -> [FAIL][90] ([fdo#111646])
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb9/igt@gem_exec_schedule@deep-bsd2.html
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb1/igt@gem_exec_schedule@deep-bsd2.html

  * igt@gem_mocs_settings@mocs-rc6-bsd2:
    - shard-iclb:         [FAIL][91] ([fdo#111330]) -> [SKIP][92] ([fdo#109276])
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb2/igt@gem_mocs_settings@mocs-rc6-bsd2.html
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb8/igt@gem_mocs_settings@mocs-rc6-bsd2.html

  * igt@i915_pm_rps@waitboost:
    - shard-tglb:         [FAIL][93] ([fdo#111650]) -> [FAIL][94] ([fdo#102250])
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb2/igt@i915_pm_rps@waitboost.html
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb6/igt@i915_pm_rps@waitboost.html

  
  [fdo# 112000 ]: https://bugs.freedesktop.org/show_bug.cgi?id= 112000 
  [fdo#102250]: https://bugs.freedesktop.org/show_bug.cgi?id=102250
  [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
  [fdo#103184]: https://bugs.freedesktop.org/show_bug.cgi?id=103184
  [fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232
  [fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540
  [fdo#104108]: https://bugs.freedesktop.org/show_bug.cgi?id=104108
  [fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363
  [fdo#107931]: https://bugs.freedesktop.org/show_bug.cgi?id=107931
  [fdo#108134]: https://bugs.freedesktop.org/show_bug.cgi?id=108134
  [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
  [fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566
  [fdo#108682]: https://bugs.freedesktop.org/show_bug.cgi?id=108682
  [fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#110403]: https://bugs.freedesktop.org/show_bug.cgi?id=110403
  [fdo#110854]: https://bugs.freedesktop.org/show_bug.cgi?id=110854
  [fdo#111330]: https://bugs.freedesktop.org/show_bug.cgi?id=111330
  [fdo#111606]: https://bugs.freedesktop.org/show_bug.cgi?id=111606
  [fdo#111646]: https://bugs.freedesktop.org/show_bug.cgi?id=111646
  [fdo#111650]: https://bugs.freedesktop.org/show_bug.cgi?id=111650
  [fdo#111671]: https://bugs.freedesktop.org/show_bug.cgi?id=111671
  [fdo#111672]: https://bugs.freedesktop.org/show_bug.cgi?id=111672
  [fdo#111677]: https://bugs.freedesktop.org/show_bug.cgi?id=111677
  [fdo#111757]: https://bugs.freedesktop.org/show_bug.cgi?id=111757
  [fdo#111781]: https://bugs.freedesktop.org/show_bug.cgi?id=111781
  [fdo#111830 ]: https://bugs.freedesktop.org/show_bug.cgi?id=111830 
  [fdo#111831]: https://bugs.freedesktop.org/show_bug.cgi?id=111831
  [fdo#111832]: https://bugs.freedesktop.org/show_bug.cgi?id=111832
  [fdo#111850]: https://bugs.freedesktop.org/show_bug.cgi?id=111850
  [fdo#111870]: https://bugs.freedesktop.org/show_bug.cgi?id=111870
  [fdo#112031]: https://bugs.freedesktop.org/show_bug.cgi?id=112031
  [fdo#112037]: https://bugs.freedesktop.org/show_bug.cgi?id=112037
  [fdo#112080]: ht

== Logs ==

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

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

* [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-14  6:44   ` Patchwork
  0 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2019-11-14  6:44 UTC (permalink / raw)
  To: Lionel Landwerlin; +Cc: intel-gfx

== Series Details ==

Series: drm/i915/perf: don't forget noa wait after oa config
URL   : https://patchwork.freedesktop.org/series/69409/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_7331_full -> Patchwork_15250_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Known issues
------------

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_ctx_persistence@vcs1-queued:
    - shard-iclb:         [PASS][1] -> [SKIP][2] ([fdo#109276] / [fdo#112080]) +4 similar issues
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb1/igt@gem_ctx_persistence@vcs1-queued.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb3/igt@gem_ctx_persistence@vcs1-queued.html

  * igt@gem_ctx_switch@all-light:
    - shard-tglb:         [PASS][3] -> [INCOMPLETE][4] ([fdo#111672])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb4/igt@gem_ctx_switch@all-light.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb6/igt@gem_ctx_switch@all-light.html

  * igt@gem_eio@in-flight-contexts-immediate:
    - shard-tglb:         [PASS][5] -> [INCOMPLETE][6] ([fdo#112081])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb5/igt@gem_eio@in-flight-contexts-immediate.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb6/igt@gem_eio@in-flight-contexts-immediate.html

  * igt@gem_exec_balancer@smoke:
    - shard-iclb:         [PASS][7] -> [SKIP][8] ([fdo#110854])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb4/igt@gem_exec_balancer@smoke.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb7/igt@gem_exec_balancer@smoke.html

  * igt@gem_exec_schedule@preempt-queue-contexts-chain-blt:
    - shard-tglb:         [PASS][9] -> [INCOMPLETE][10] ([fdo#111606] / [fdo#111677])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb2/igt@gem_exec_schedule@preempt-queue-contexts-chain-blt.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb6/igt@gem_exec_schedule@preempt-queue-contexts-chain-blt.html

  * igt@gem_exec_schedule@promotion-bsd:
    - shard-iclb:         [PASS][11] -> [SKIP][12] ([fdo#112146])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb7/igt@gem_exec_schedule@promotion-bsd.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb1/igt@gem_exec_schedule@promotion-bsd.html

  * igt@gem_exec_suspend@basic-s0:
    - shard-tglb:         [PASS][13] -> [INCOMPLETE][14] ([fdo#111832])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb9/igt@gem_exec_suspend@basic-s0.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb3/igt@gem_exec_suspend@basic-s0.html

  * igt@gem_userptr_blits@dmabuf-sync:
    - shard-snb:          [PASS][15] -> [DMESG-WARN][16] ([fdo#111870]) +1 similar issue
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-snb2/igt@gem_userptr_blits@dmabuf-sync.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-snb6/igt@gem_userptr_blits@dmabuf-sync.html

  * igt@gem_userptr_blits@map-fixed-invalidate-busy-gup:
    - shard-hsw:          [PASS][17] -> [DMESG-WARN][18] ([fdo#111870]) +2 similar issues
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-hsw5/igt@gem_userptr_blits@map-fixed-invalidate-busy-gup.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-hsw5/igt@gem_userptr_blits@map-fixed-invalidate-busy-gup.html

  * igt@gem_workarounds@suspend-resume-context:
    - shard-tglb:         [PASS][19] -> [INCOMPLETE][20] ([fdo#111832] / [fdo#111850]) +2 similar issues
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb6/igt@gem_workarounds@suspend-resume-context.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb5/igt@gem_workarounds@suspend-resume-context.html

  * igt@i915_selftest@live_gt_timelines:
    - shard-tglb:         [PASS][21] -> [INCOMPLETE][22] ([fdo#111831])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb9/igt@i915_selftest@live_gt_timelines.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb7/igt@i915_selftest@live_gt_timelines.html

  * igt@i915_selftest@live_perf:
    - shard-hsw:          [PASS][23] -> [INCOMPLETE][24] ([fdo#103540])
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-hsw4/igt@i915_selftest@live_perf.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-hsw1/igt@i915_selftest@live_perf.html

  * igt@kms_cursor_crc@pipe-a-cursor-suspend:
    - shard-kbl:          [PASS][25] -> [DMESG-WARN][26] ([fdo#108566]) +6 similar issues
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-kbl6/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-kbl3/igt@kms_cursor_crc@pipe-a-cursor-suspend.html

  * igt@kms_draw_crc@draw-method-xrgb8888-pwrite-xtiled:
    - shard-skl:          [PASS][27] -> [FAIL][28] ([fdo#103184] / [fdo#103232])
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl10/igt@kms_draw_crc@draw-method-xrgb8888-pwrite-xtiled.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl8/igt@kms_draw_crc@draw-method-xrgb8888-pwrite-xtiled.html

  * igt@kms_flip@flip-vs-expired-vblank:
    - shard-skl:          [PASS][29] -> [FAIL][30] ([fdo#105363])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl1/igt@kms_flip@flip-vs-expired-vblank.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl1/igt@kms_flip@flip-vs-expired-vblank.html

  * igt@kms_flip@flip-vs-suspend-interruptible:
    - shard-tglb:         [PASS][31] -> [INCOMPLETE][32] ([fdo#111832] / [fdo#111850] / [fdo#112031])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb9/igt@kms_flip@flip-vs-suspend-interruptible.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb9/igt@kms_flip@flip-vs-suspend-interruptible.html

  * igt@kms_flip_tiling@flip-to-y-tiled:
    - shard-skl:          [PASS][33] -> [FAIL][34] ([fdo#107931] / [fdo#108134])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl3/igt@kms_flip_tiling@flip-to-y-tiled.html
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl8/igt@kms_flip_tiling@flip-to-y-tiled.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-plflip-blt:
    - shard-tglb:         [PASS][35] -> [FAIL][36] ([fdo#103167]) +2 similar issues
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-plflip-blt.html
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb5/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite:
    - shard-iclb:         [PASS][37] -> [FAIL][38] ([fdo#103167]) +3 similar issues
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb2/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-pwrite.html

  * igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min:
    - shard-skl:          [PASS][39] -> [FAIL][40] ([fdo#108145]) +1 similar issue
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl8/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl2/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html

  * igt@kms_psr@psr2_sprite_blt:
    - shard-iclb:         [PASS][41] -> [SKIP][42] ([fdo#109441]) +2 similar issues
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb2/igt@kms_psr@psr2_sprite_blt.html
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb8/igt@kms_psr@psr2_sprite_blt.html

  * igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend:
    - shard-skl:          [PASS][43] -> [INCOMPLETE][44] ([fdo#104108])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl3/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl8/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html

  * igt@perf_pmu@busy-check-all-vcs1:
    - shard-iclb:         [PASS][45] -> [SKIP][46] ([fdo#112080]) +7 similar issues
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb4/igt@perf_pmu@busy-check-all-vcs1.html
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb7/igt@perf_pmu@busy-check-all-vcs1.html

  * igt@prime_vgem@fence-wait-bsd2:
    - shard-iclb:         [PASS][47] -> [SKIP][48] ([fdo#109276]) +17 similar issues
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb4/igt@prime_vgem@fence-wait-bsd2.html
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb7/igt@prime_vgem@fence-wait-bsd2.html

  
#### Possible fixes ####

  * igt@gem_ctx_exec@basic-invalid-context-vcs1:
    - shard-iclb:         [SKIP][49] ([fdo#112080]) -> [PASS][50] +9 similar issues
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb8/igt@gem_ctx_exec@basic-invalid-context-vcs1.html
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb2/igt@gem_ctx_exec@basic-invalid-context-vcs1.html

  * igt@gem_ctx_isolation@vcs1-dirty-create:
    - shard-iclb:         [SKIP][51] ([fdo#109276] / [fdo#112080]) -> [PASS][52] +1 similar issue
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb7/igt@gem_ctx_isolation@vcs1-dirty-create.html
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb4/igt@gem_ctx_isolation@vcs1-dirty-create.html

  * igt@gem_exec_schedule@preempt-other-chain-bsd:
    - shard-iclb:         [SKIP][53] ([fdo#112146]) -> [PASS][54] +3 similar issues
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb2/igt@gem_exec_schedule@preempt-other-chain-bsd.html
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb5/igt@gem_exec_schedule@preempt-other-chain-bsd.html

  * igt@gem_exec_schedule@preempt-queue-contexts-render:
    - shard-tglb:         [INCOMPLETE][55] ([fdo#111606] / [fdo#111677]) -> [PASS][56]
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb6/igt@gem_exec_schedule@preempt-queue-contexts-render.html
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb2/igt@gem_exec_schedule@preempt-queue-contexts-render.html

  * igt@gem_persistent_relocs@forked-interruptible-thrashing:
    - shard-tglb:         [FAIL][57] ([fdo#112037]) -> [PASS][58]
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb8/igt@gem_persistent_relocs@forked-interruptible-thrashing.html
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb2/igt@gem_persistent_relocs@forked-interruptible-thrashing.html

  * igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy:
    - shard-hsw:          [DMESG-WARN][59] ([fdo#111870]) -> [PASS][60] +2 similar issues
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-hsw5/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy.html
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-hsw2/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy.html

  * igt@gem_userptr_blits@sync-unmap-cycles:
    - shard-snb:          [DMESG-WARN][61] ([fdo#111870]) -> [PASS][62] +1 similar issue
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-snb6/igt@gem_userptr_blits@sync-unmap-cycles.html
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-snb2/igt@gem_userptr_blits@sync-unmap-cycles.html

  * igt@gem_workarounds@suspend-resume-fd:
    - shard-kbl:          [DMESG-WARN][63] ([fdo#108566]) -> [PASS][64] +2 similar issues
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-kbl1/igt@gem_workarounds@suspend-resume-fd.html
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-kbl6/igt@gem_workarounds@suspend-resume-fd.html

  * igt@i915_pm_dc@dc6-psr:
    - shard-iclb:         [FAIL][65] ([fdo#111830 ]) -> [PASS][66]
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb4/igt@i915_pm_dc@dc6-psr.html
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb7/igt@i915_pm_dc@dc6-psr.html

  * igt@i915_suspend@fence-restore-tiled2untiled:
    - shard-tglb:         [INCOMPLETE][67] ([fdo#111832] / [fdo#111850]) -> [PASS][68] +2 similar issues
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb8/igt@i915_suspend@fence-restore-tiled2untiled.html
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb9/igt@i915_suspend@fence-restore-tiled2untiled.html

  * igt@kms_color@pipe-a-ctm-0-5:
    - shard-skl:          [FAIL][69] ([fdo#108682]) -> [PASS][70]
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl3/igt@kms_color@pipe-a-ctm-0-5.html
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl8/igt@kms_color@pipe-a-ctm-0-5.html

  * igt@kms_fbcon_fbt@psr-suspend:
    - shard-skl:          [INCOMPLETE][71] ([fdo#104108]) -> [PASS][72]
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl3/igt@kms_fbcon_fbt@psr-suspend.html
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl6/igt@kms_fbcon_fbt@psr-suspend.html

  * igt@kms_flip@flip-vs-suspend:
    - shard-apl:          [DMESG-WARN][73] ([fdo#108566]) -> [PASS][74]
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-apl4/igt@kms_flip@flip-vs-suspend.html
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-apl8/igt@kms_flip@flip-vs-suspend.html

  * igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw:
    - shard-iclb:         [FAIL][75] ([fdo#103167]) -> [PASS][76] +4 similar issues
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb1/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb4/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-pwrite:
    - shard-tglb:         [FAIL][77] ([fdo#103167]) -> [PASS][78] +2 similar issues
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-pwrite.html
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb4/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-pwrite.html

  * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
    - shard-skl:          [FAIL][79] ([fdo#108145] / [fdo#110403]) -> [PASS][80] +1 similar issue
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-skl4/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-skl2/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html

  * igt@kms_psr@psr2_sprite_mmap_gtt:
    - shard-iclb:         [SKIP][81] ([fdo#109441]) -> [PASS][82] +1 similar issue
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb8/igt@kms_psr@psr2_sprite_mmap_gtt.html
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb2/igt@kms_psr@psr2_sprite_mmap_gtt.html

  * igt@kms_setmode@basic:
    - shard-hsw:          [FAIL][83] ([fdo#99912]) -> [PASS][84]
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-hsw7/igt@kms_setmode@basic.html
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-hsw6/igt@kms_setmode@basic.html

  * igt@prime_busy@after-bsd2:
    - shard-iclb:         [SKIP][85] ([fdo#109276]) -> [PASS][86] +14 similar issues
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb3/igt@prime_busy@after-bsd2.html
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb1/igt@prime_busy@after-bsd2.html

  
#### Warnings ####

  * igt@gem_eio@kms:
    - shard-snb:          [DMESG-WARN][87] ([fdo# 112000 ] / [fdo#111781]) -> [FAIL][88] ([fdo#111757])
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-snb6/igt@gem_eio@kms.html
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-snb4/igt@gem_eio@kms.html

  * igt@gem_exec_schedule@deep-bsd2:
    - shard-tglb:         [INCOMPLETE][89] ([fdo#111671]) -> [FAIL][90] ([fdo#111646])
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb9/igt@gem_exec_schedule@deep-bsd2.html
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb1/igt@gem_exec_schedule@deep-bsd2.html

  * igt@gem_mocs_settings@mocs-rc6-bsd2:
    - shard-iclb:         [FAIL][91] ([fdo#111330]) -> [SKIP][92] ([fdo#109276])
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-iclb2/igt@gem_mocs_settings@mocs-rc6-bsd2.html
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-iclb8/igt@gem_mocs_settings@mocs-rc6-bsd2.html

  * igt@i915_pm_rps@waitboost:
    - shard-tglb:         [FAIL][93] ([fdo#111650]) -> [FAIL][94] ([fdo#102250])
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7331/shard-tglb2/igt@i915_pm_rps@waitboost.html
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15250/shard-tglb6/igt@i915_pm_rps@waitboost.html

  
  [fdo# 112000 ]: https://bugs.freedesktop.org/show_bug.cgi?id= 112000 
  [fdo#102250]: https://bugs.freedesktop.org/show_bug.cgi?id=102250
  [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
  [fdo#103184]: https://bugs.freedesktop.org/show_bug.cgi?id=103184
  [fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232
  [fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540
  [fdo#104108]: https://bugs.freedesktop.org/show_bug.cgi?id=104108
  [fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363
  [fdo#107931]: https://bugs.freedesktop.org/show_bug.cgi?id=107931
  [fdo#108134]: https://bugs.freedesktop.org/show_bug.cgi?id=108134
  [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
  [fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566
  [fdo#108682]: https://bugs.freedesktop.org/show_bug.cgi?id=108682
  [fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#110403]: https://bugs.freedesktop.org/show_bug.cgi?id=110403
  [fdo#110854]: https://bugs.freedesktop.org/show_bug.cgi?id=110854
  [fdo#111330]: https://bugs.freedesktop.org/show_bug.cgi?id=111330
  [fdo#111606]: https://bugs.freedesktop.org/show_bug.cgi?id=111606
  [fdo#111646]: https://bugs.freedesktop.org/show_bug.cgi?id=111646
  [fdo#111650]: https://bugs.freedesktop.org/show_bug.cgi?id=111650
  [fdo#111671]: https://bugs.freedesktop.org/show_bug.cgi?id=111671
  [fdo#111672]: https://bugs.freedesktop.org/show_bug.cgi?id=111672
  [fdo#111677]: https://bugs.freedesktop.org/show_bug.cgi?id=111677
  [fdo#111757]: https://bugs.freedesktop.org/show_bug.cgi?id=111757
  [fdo#111781]: https://bugs.freedesktop.org/show_bug.cgi?id=111781
  [fdo#111830 ]: https://bugs.freedesktop.org/show_bug.cgi?id=111830 
  [fdo#111831]: https://bugs.freedesktop.org/show_bug.cgi?id=111831
  [fdo#111832]: https://bugs.freedesktop.org/show_bug.cgi?id=111832
  [fdo#111850]: https://bugs.freedesktop.org/show_bug.cgi?id=111850
  [fdo#111870]: https://bugs.freedesktop.org/show_bug.cgi?id=111870
  [fdo#112031]: https://bugs.freedesktop.org/show_bug.cgi?id=112031
  [fdo#112037]: https://bugs.freedesktop.org/show_bug.cgi?id=112037
  [fdo#112080]: ht

== Logs ==

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

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

* Re: [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-14  7:19             ` Chris Wilson
  0 siblings, 0 replies; 18+ messages in thread
From: Chris Wilson @ 2019-11-14  7:19 UTC (permalink / raw)
  To: Lionel Landwerlin, intel-gfx

Quoting Lionel Landwerlin (2019-11-13 18:33:59)
> On 13/11/2019 20:11, Chris Wilson wrote:
> > Quoting Chris Wilson (2019-11-13 18:10:22)
> >> Quoting Lionel Landwerlin (2019-11-13 18:07:59)
> >>> On 13/11/2019 18:35, Chris Wilson wrote:
> >>>> Quoting Lionel Landwerlin (2019-11-13 15:46:39)
> >>>>> I'm observing incoherence metric values, changing from run to run.
> >>>>>
> >>>>> It appears the patches introducing noa wait & reconfiguration from
> >>>>> command stream switched places in the series multiple times during the
> >>>>> review. This lead to the dependency of one onto the order to go
> >>>>> missing...
> >>>> I don't think I dropped it; if I did my apologies. I do feel the
> >>>> egg-on-face for writing a selftest to verify that noa_wait does what you
> >>>> said it did, but completely missing that it went unused :)
> 
> 
> It was probably my mistake :)
> 
> 
> >>>>    
> >>>>> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
> >>>>> Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
> >>>>> ---
> >>>>>    drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
> >>>>>    1 file changed, 7 insertions(+), 2 deletions(-)
> >>>>>
> >>>>> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
> >>>>> index 507236bd41ae..31e47ee23357 100644
> >>>>> --- a/drivers/gpu/drm/i915/i915_perf.c
> >>>>> +++ b/drivers/gpu/drm/i915/i915_perf.c
> >>>>> @@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
> >>>>>           config_length += num_lri_dwords(oa_config->mux_regs_len);
> >>>>>           config_length += num_lri_dwords(oa_config->b_counter_regs_len);
> >>>>>           config_length += num_lri_dwords(oa_config->flex_regs_len);
> >>>>> -       config_length++; /* MI_BATCH_BUFFER_END */
> >>>>> +       config_length += 3; /* MI_BATCH_BUFFER_START */
> >>>>>           config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
> >>>>>    
> >>>>>           obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
> >>>>> @@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
> >>>>>                                oa_config->flex_regs,
> >>>>>                                oa_config->flex_regs_len);
> >>>>>    
> >>>>> -       *cs++ = MI_BATCH_BUFFER_END;
> >>>>> +       /* Jump into the active wait. */
> >>>>> +       *cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
> >>>>> +                MI_BATCH_BUFFER_START :
> >>>>> +                MI_BATCH_BUFFER_START_GEN8);
> >>>>> +       *cs++ = i915_ggtt_offset(stream->noa_wait);
> >>>>> +       *cs++ = 0;
> >>>> Yikes, stream->noa_wait is unused.
> >>>>
> >>>> Hmm, the noa_wait doesn't have any arbitration points internally, so we
> >>>> probably do need to make it non-preemptable as well?
> >>>>
> >>>> With a rq->flags |= I915_REQUEST_NOPREEMPT in emit_oa_config,
> >>>> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
> >>>>
> >>>> We need to wrap emit_oa_config() in a similar selftest and verify
> >>>> that a read of the oa regs are correct and that the TIMESTAMP indicates
> >>>> the appropriate delay before the read. If you feel bored.
> >>>> -Chris
> >>>
> >>> As long as we wait long enough, it should be okay.
> >>>
> >>> Why making it nopreempt?
> >> Aiui, the batch buffer has no arbitration points so the delay may incur
> >> the wrath of the forced preemption. That is another request (of higher
> >> priority) wishing to run, but not being able to.
> > The alternative would be adding a MI_ARB_CHECK at the start of the loop
> > if you happy with being preempted out.
> > -Chris
> 
> I guess I'll do that :)

Ok, then have an 
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
on the understanding you'll look at adding an MI_ARB_CHECK next :)
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [Intel-gfx] [PATCH] drm/i915/perf: don't forget noa wait after oa config
@ 2019-11-14  7:19             ` Chris Wilson
  0 siblings, 0 replies; 18+ messages in thread
From: Chris Wilson @ 2019-11-14  7:19 UTC (permalink / raw)
  To: Lionel Landwerlin, intel-gfx

Quoting Lionel Landwerlin (2019-11-13 18:33:59)
> On 13/11/2019 20:11, Chris Wilson wrote:
> > Quoting Chris Wilson (2019-11-13 18:10:22)
> >> Quoting Lionel Landwerlin (2019-11-13 18:07:59)
> >>> On 13/11/2019 18:35, Chris Wilson wrote:
> >>>> Quoting Lionel Landwerlin (2019-11-13 15:46:39)
> >>>>> I'm observing incoherence metric values, changing from run to run.
> >>>>>
> >>>>> It appears the patches introducing noa wait & reconfiguration from
> >>>>> command stream switched places in the series multiple times during the
> >>>>> review. This lead to the dependency of one onto the order to go
> >>>>> missing...
> >>>> I don't think I dropped it; if I did my apologies. I do feel the
> >>>> egg-on-face for writing a selftest to verify that noa_wait does what you
> >>>> said it did, but completely missing that it went unused :)
> 
> 
> It was probably my mistake :)
> 
> 
> >>>>    
> >>>>> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
> >>>>> Fixes: 15d0ace1f876 ("drm/i915/perf: execute OA configuration from command stream")
> >>>>> ---
> >>>>>    drivers/gpu/drm/i915/i915_perf.c | 9 +++++++--
> >>>>>    1 file changed, 7 insertions(+), 2 deletions(-)
> >>>>>
> >>>>> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
> >>>>> index 507236bd41ae..31e47ee23357 100644
> >>>>> --- a/drivers/gpu/drm/i915/i915_perf.c
> >>>>> +++ b/drivers/gpu/drm/i915/i915_perf.c
> >>>>> @@ -1870,7 +1870,7 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
> >>>>>           config_length += num_lri_dwords(oa_config->mux_regs_len);
> >>>>>           config_length += num_lri_dwords(oa_config->b_counter_regs_len);
> >>>>>           config_length += num_lri_dwords(oa_config->flex_regs_len);
> >>>>> -       config_length++; /* MI_BATCH_BUFFER_END */
> >>>>> +       config_length += 3; /* MI_BATCH_BUFFER_START */
> >>>>>           config_length = ALIGN(sizeof(u32) * config_length, I915_GTT_PAGE_SIZE);
> >>>>>    
> >>>>>           obj = i915_gem_object_create_shmem(stream->perf->i915, config_length);
> >>>>> @@ -1895,7 +1895,12 @@ alloc_oa_config_buffer(struct i915_perf_stream *stream,
> >>>>>                                oa_config->flex_regs,
> >>>>>                                oa_config->flex_regs_len);
> >>>>>    
> >>>>> -       *cs++ = MI_BATCH_BUFFER_END;
> >>>>> +       /* Jump into the active wait. */
> >>>>> +       *cs++ = (INTEL_GEN(stream->perf->i915) < 8 ?
> >>>>> +                MI_BATCH_BUFFER_START :
> >>>>> +                MI_BATCH_BUFFER_START_GEN8);
> >>>>> +       *cs++ = i915_ggtt_offset(stream->noa_wait);
> >>>>> +       *cs++ = 0;
> >>>> Yikes, stream->noa_wait is unused.
> >>>>
> >>>> Hmm, the noa_wait doesn't have any arbitration points internally, so we
> >>>> probably do need to make it non-preemptable as well?
> >>>>
> >>>> With a rq->flags |= I915_REQUEST_NOPREEMPT in emit_oa_config,
> >>>> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
> >>>>
> >>>> We need to wrap emit_oa_config() in a similar selftest and verify
> >>>> that a read of the oa regs are correct and that the TIMESTAMP indicates
> >>>> the appropriate delay before the read. If you feel bored.
> >>>> -Chris
> >>>
> >>> As long as we wait long enough, it should be okay.
> >>>
> >>> Why making it nopreempt?
> >> Aiui, the batch buffer has no arbitration points so the delay may incur
> >> the wrath of the forced preemption. That is another request (of higher
> >> priority) wishing to run, but not being able to.
> > The alternative would be adding a MI_ARB_CHECK at the start of the loop
> > if you happy with being preempted out.
> > -Chris
> 
> I guess I'll do that :)

Ok, then have an 
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
on the understanding you'll look at adding an MI_ARB_CHECK next :)
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

end of thread, other threads:[~2019-11-14  7:19 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-13 15:46 [PATCH] drm/i915/perf: don't forget noa wait after oa config Lionel Landwerlin
2019-11-13 15:46 ` [Intel-gfx] " Lionel Landwerlin
2019-11-13 16:35 ` Chris Wilson
2019-11-13 16:35   ` [Intel-gfx] " Chris Wilson
2019-11-13 18:07   ` Lionel Landwerlin
2019-11-13 18:07     ` [Intel-gfx] " Lionel Landwerlin
2019-11-13 18:10     ` Chris Wilson
2019-11-13 18:10       ` [Intel-gfx] " Chris Wilson
2019-11-13 18:11       ` Chris Wilson
2019-11-13 18:11         ` [Intel-gfx] " Chris Wilson
2019-11-13 18:33         ` Lionel Landwerlin
2019-11-13 18:33           ` [Intel-gfx] " Lionel Landwerlin
2019-11-14  7:19           ` Chris Wilson
2019-11-14  7:19             ` [Intel-gfx] " Chris Wilson
2019-11-13 16:56 ` ✓ Fi.CI.BAT: success for " Patchwork
2019-11-13 16:56   ` [Intel-gfx] " Patchwork
2019-11-14  6:44 ` ✓ Fi.CI.IGT: " Patchwork
2019-11-14  6:44   ` [Intel-gfx] " 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.