All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915/selftests: Teach guc to take intel_gt as its argument
@ 2019-10-16 11:53 Chris Wilson
  2019-10-16 12:43 ` Tvrtko Ursulin
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Chris Wilson @ 2019-10-16 11:53 UTC (permalink / raw)
  To: intel-gfx

The guc selftests are hardware^W firmare centric and so want to use the
gt as its target.

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

diff --git a/drivers/gpu/drm/i915/gt/uc/selftest_guc.c b/drivers/gpu/drm/i915/gt/uc/selftest_guc.c
index f927f851aadf..d8a80388bd31 100644
--- a/drivers/gpu/drm/i915/gt/uc/selftest_guc.c
+++ b/drivers/gpu/drm/i915/gt/uc/selftest_guc.c
@@ -108,22 +108,15 @@ static bool client_doorbell_in_sync(struct intel_guc_client *client)
  * validating that the doorbells status expected by the driver matches what the
  * GuC/HW have.
  */
-static int igt_guc_clients(void *args)
+static int igt_guc_clients(void *arg)
 {
-	struct drm_i915_private *dev_priv = args;
+	struct intel_gt *gt = arg;
+	struct intel_guc *guc = &gt->uc.guc;
 	intel_wakeref_t wakeref;
-	struct intel_guc *guc;
 	int err = 0;
 
-	GEM_BUG_ON(!HAS_GT_UC(dev_priv));
-	wakeref = intel_runtime_pm_get(&dev_priv->runtime_pm);
-
-	guc = &dev_priv->gt.uc.guc;
-	if (!guc) {
-		pr_err("No guc object!\n");
-		err = -EINVAL;
-		goto unlock;
-	}
+	GEM_BUG_ON(!HAS_GT_UC(gt->i915));
+	wakeref = intel_runtime_pm_get(gt->uncore->rpm);
 
 	err = check_all_doorbells(guc);
 	if (err)
@@ -188,7 +181,7 @@ static int igt_guc_clients(void *args)
 	guc_clients_create(guc);
 	guc_clients_enable(guc);
 unlock:
-	intel_runtime_pm_put(&dev_priv->runtime_pm, wakeref);
+	intel_runtime_pm_put(gt->uncore->rpm, wakeref);
 	return err;
 }
 
@@ -199,21 +192,14 @@ static int igt_guc_clients(void *args)
  */
 static int igt_guc_doorbells(void *arg)
 {
-	struct drm_i915_private *dev_priv = arg;
+	struct intel_gt *gt = arg;
+	struct intel_guc *guc = &gt->uc.guc;
 	intel_wakeref_t wakeref;
-	struct intel_guc *guc;
 	int i, err = 0;
 	u16 db_id;
 
-	GEM_BUG_ON(!HAS_GT_UC(dev_priv));
-	wakeref = intel_runtime_pm_get(&dev_priv->runtime_pm);
-
-	guc = &dev_priv->gt.uc.guc;
-	if (!guc) {
-		pr_err("No guc object!\n");
-		err = -EINVAL;
-		goto unlock;
-	}
+	GEM_BUG_ON(!HAS_GT_UC(gt->i915));
+	wakeref = intel_runtime_pm_get(gt->uncore->rpm);
 
 	err = check_all_doorbells(guc);
 	if (err)
@@ -295,19 +281,19 @@ static int igt_guc_doorbells(void *arg)
 			guc_client_free(clients[i]);
 		}
 unlock:
-	intel_runtime_pm_put(&dev_priv->runtime_pm, wakeref);
+	intel_runtime_pm_put(gt->uncore->rpm, wakeref);
 	return err;
 }
 
-int intel_guc_live_selftest(struct drm_i915_private *dev_priv)
+int intel_guc_live_selftest(struct drm_i915_private *i915)
 {
 	static const struct i915_subtest tests[] = {
 		SUBTEST(igt_guc_clients),
 		SUBTEST(igt_guc_doorbells),
 	};
 
-	if (!USES_GUC_SUBMISSION(dev_priv))
+	if (!USES_GUC_SUBMISSION(i915))
 		return 0;
 
-	return i915_subtests(tests, dev_priv);
+	return intel_gt_live_subtests(tests, &i915->gt);
 }
-- 
2.23.0

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

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

* Re: [PATCH] drm/i915/selftests: Teach guc to take intel_gt as its argument
  2019-10-16 11:53 [PATCH] drm/i915/selftests: Teach guc to take intel_gt as its argument Chris Wilson
@ 2019-10-16 12:43 ` Tvrtko Ursulin
  2019-10-16 16:02 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
  2019-10-16 16:28 ` ✗ Fi.CI.BAT: failure " Patchwork
  2 siblings, 0 replies; 4+ messages in thread
From: Tvrtko Ursulin @ 2019-10-16 12:43 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx


On 16/10/2019 12:53, Chris Wilson wrote:
> The guc selftests are hardware^W firmare centric and so want to use the

Typo in firmware.

> gt as its target.
> 
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> ---
>   drivers/gpu/drm/i915/gt/uc/selftest_guc.c | 42 ++++++++---------------
>   1 file changed, 14 insertions(+), 28 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/gt/uc/selftest_guc.c b/drivers/gpu/drm/i915/gt/uc/selftest_guc.c
> index f927f851aadf..d8a80388bd31 100644
> --- a/drivers/gpu/drm/i915/gt/uc/selftest_guc.c
> +++ b/drivers/gpu/drm/i915/gt/uc/selftest_guc.c
> @@ -108,22 +108,15 @@ static bool client_doorbell_in_sync(struct intel_guc_client *client)
>    * validating that the doorbells status expected by the driver matches what the
>    * GuC/HW have.
>    */
> -static int igt_guc_clients(void *args)
> +static int igt_guc_clients(void *arg)
>   {
> -	struct drm_i915_private *dev_priv = args;
> +	struct intel_gt *gt = arg;
> +	struct intel_guc *guc = &gt->uc.guc;
>   	intel_wakeref_t wakeref;
> -	struct intel_guc *guc;
>   	int err = 0;
>   
> -	GEM_BUG_ON(!HAS_GT_UC(dev_priv));
> -	wakeref = intel_runtime_pm_get(&dev_priv->runtime_pm);
> -
> -	guc = &dev_priv->gt.uc.guc;
> -	if (!guc) {
> -		pr_err("No guc object!\n");
> -		err = -EINVAL;
> -		goto unlock;
> -	}

Must be some refactor caught someone of guard. :)

> +	GEM_BUG_ON(!HAS_GT_UC(gt->i915));
> +	wakeref = intel_runtime_pm_get(gt->uncore->rpm);
>   
>   	err = check_all_doorbells(guc);
>   	if (err)
> @@ -188,7 +181,7 @@ static int igt_guc_clients(void *args)
>   	guc_clients_create(guc);
>   	guc_clients_enable(guc);
>   unlock:
> -	intel_runtime_pm_put(&dev_priv->runtime_pm, wakeref);
> +	intel_runtime_pm_put(gt->uncore->rpm, wakeref);
>   	return err;
>   }
>   
> @@ -199,21 +192,14 @@ static int igt_guc_clients(void *args)
>    */
>   static int igt_guc_doorbells(void *arg)
>   {
> -	struct drm_i915_private *dev_priv = arg;
> +	struct intel_gt *gt = arg;
> +	struct intel_guc *guc = &gt->uc.guc;
>   	intel_wakeref_t wakeref;
> -	struct intel_guc *guc;
>   	int i, err = 0;
>   	u16 db_id;
>   
> -	GEM_BUG_ON(!HAS_GT_UC(dev_priv));
> -	wakeref = intel_runtime_pm_get(&dev_priv->runtime_pm);
> -
> -	guc = &dev_priv->gt.uc.guc;
> -	if (!guc) {
> -		pr_err("No guc object!\n");
> -		err = -EINVAL;
> -		goto unlock;
> -	}
> +	GEM_BUG_ON(!HAS_GT_UC(gt->i915));
> +	wakeref = intel_runtime_pm_get(gt->uncore->rpm);
>   
>   	err = check_all_doorbells(guc);
>   	if (err)
> @@ -295,19 +281,19 @@ static int igt_guc_doorbells(void *arg)
>   			guc_client_free(clients[i]);
>   		}
>   unlock:
> -	intel_runtime_pm_put(&dev_priv->runtime_pm, wakeref);
> +	intel_runtime_pm_put(gt->uncore->rpm, wakeref);
>   	return err;
>   }
>   
> -int intel_guc_live_selftest(struct drm_i915_private *dev_priv)
> +int intel_guc_live_selftest(struct drm_i915_private *i915)
>   {
>   	static const struct i915_subtest tests[] = {
>   		SUBTEST(igt_guc_clients),
>   		SUBTEST(igt_guc_doorbells),
>   	};
>   
> -	if (!USES_GUC_SUBMISSION(dev_priv))
> +	if (!USES_GUC_SUBMISSION(i915))
>   		return 0;
>   
> -	return i915_subtests(tests, dev_priv);
> +	return intel_gt_live_subtests(tests, &i915->gt);
>   }
> 

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

Regards,

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

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

* ✗ Fi.CI.CHECKPATCH: warning for drm/i915/selftests: Teach guc to take intel_gt as its argument
  2019-10-16 11:53 [PATCH] drm/i915/selftests: Teach guc to take intel_gt as its argument Chris Wilson
  2019-10-16 12:43 ` Tvrtko Ursulin
@ 2019-10-16 16:02 ` Patchwork
  2019-10-16 16:28 ` ✗ Fi.CI.BAT: failure " Patchwork
  2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2019-10-16 16:02 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915/selftests: Teach guc to take intel_gt as its argument
URL   : https://patchwork.freedesktop.org/series/68093/
State : warning

== Summary ==

$ dim checkpatch origin/drm-tip
49bee50e0596 drm/i915/selftests: Teach guc to take intel_gt as its argument
-:7: WARNING:TYPO_SPELLING: 'firmare' may be misspelled - perhaps 'firmware'?
#7: 
The guc selftests are hardware^W firmare centric and so want to use the

total: 0 errors, 1 warnings, 0 checks, 83 lines checked

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

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

* ✗ Fi.CI.BAT: failure for drm/i915/selftests: Teach guc to take intel_gt as its argument
  2019-10-16 11:53 [PATCH] drm/i915/selftests: Teach guc to take intel_gt as its argument Chris Wilson
  2019-10-16 12:43 ` Tvrtko Ursulin
  2019-10-16 16:02 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
@ 2019-10-16 16:28 ` Patchwork
  2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2019-10-16 16:28 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915/selftests: Teach guc to take intel_gt as its argument
URL   : https://patchwork.freedesktop.org/series/68093/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_7108 -> Patchwork_14834
====================================================

Summary
-------

  **FAILURE**

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

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

Possible new issues
-------------------

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

### IGT changes ###

#### Possible regressions ####

  * igt@i915_selftest@live_gem_contexts:
    - fi-cfl-8109u:       [PASS][1] -> [DMESG-FAIL][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7108/fi-cfl-8109u/igt@i915_selftest@live_gem_contexts.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14834/fi-cfl-8109u/igt@i915_selftest@live_gem_contexts.html

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_tiled_pread_basic:
    - fi-icl-u3:          [PASS][3] -> [DMESG-WARN][4] ([fdo#107724])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7108/fi-icl-u3/igt@gem_tiled_pread_basic.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14834/fi-icl-u3/igt@gem_tiled_pread_basic.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_7108/fi-kbl-7500u/igt@kms_chamelium@dp-edid-read.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14834/fi-kbl-7500u/igt@kms_chamelium@dp-edid-read.html

  
#### Possible fixes ####

  * igt@gem_linear_blits@basic:
    - fi-icl-u3:          [DMESG-WARN][7] ([fdo#107724]) -> [PASS][8] +1 similar issue
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7108/fi-icl-u3/igt@gem_linear_blits@basic.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14834/fi-icl-u3/igt@gem_linear_blits@basic.html

  * igt@i915_selftest@live_execlists:
    - fi-skl-6260u:       [DMESG-FAIL][9] -> [PASS][10]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7108/fi-skl-6260u/igt@i915_selftest@live_execlists.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14834/fi-skl-6260u/igt@i915_selftest@live_execlists.html
    - fi-cfl-8109u:       [DMESG-FAIL][11] -> [PASS][12]
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7108/fi-cfl-8109u/igt@i915_selftest@live_execlists.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14834/fi-cfl-8109u/igt@i915_selftest@live_execlists.html

  * igt@i915_selftest@live_hangcheck:
    - {fi-tgl-u2}:        [INCOMPLETE][13] ([fdo#111747]) -> [PASS][14]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7108/fi-tgl-u2/igt@i915_selftest@live_hangcheck.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14834/fi-tgl-u2/igt@i915_selftest@live_hangcheck.html

  * igt@i915_selftest@live_requests:
    - {fi-tgl-u}:         [INCOMPLETE][15] -> [PASS][16]
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7108/fi-tgl-u/igt@i915_selftest@live_requests.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14834/fi-tgl-u/igt@i915_selftest@live_requests.html

  
#### Warnings ####

  * igt@i915_selftest@live_execlists:
    - fi-apl-guc:         [DMESG-FAIL][17] -> [INCOMPLETE][18] ([fdo#103927])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7108/fi-apl-guc/igt@i915_selftest@live_execlists.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_14834/fi-apl-guc/igt@i915_selftest@live_execlists.html

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

  [fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
  [fdo#106107]: https://bugs.freedesktop.org/show_bug.cgi?id=106107
  [fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
  [fdo#109483]: https://bugs.freedesktop.org/show_bug.cgi?id=109483
  [fdo#111747]: https://bugs.freedesktop.org/show_bug.cgi?id=111747


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

  Missing    (8): fi-ilk-m540 fi-hsw-4200u fi-hsw-peppy fi-byt-squawks fi-bsw-cyan fi-icl-y fi-byt-clapper fi-bdw-samus 


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

  * CI: CI-20190529 -> None
  * Linux: CI_DRM_7108 -> Patchwork_14834

  CI-20190529: 20190529
  CI_DRM_7108: 6087ca54af37aeb0b24ce9533a885194d9cc2be7 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_5231: e293051f8f99c72cb01d21e4b73a5928ea351eb3 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_14834: 49bee50e0596e702fdc93a0426c2517b4503e642 @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

49bee50e0596 drm/i915/selftests: Teach guc to take intel_gt as its argument

== Logs ==

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

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

end of thread, other threads:[~2019-10-16 16:28 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-16 11:53 [PATCH] drm/i915/selftests: Teach guc to take intel_gt as its argument Chris Wilson
2019-10-16 12:43 ` Tvrtko Ursulin
2019-10-16 16:02 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
2019-10-16 16:28 ` ✗ Fi.CI.BAT: failure " 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.