Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t] tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test
@ 2023-08-21 12:57 Sujaritha Sundaresan
  2023-08-21 13:22 ` [igt-dev] ✗ GitLab.Pipeline: warning for " Patchwork
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Sujaritha Sundaresan @ 2023-08-21 12:57 UTC (permalink / raw)
  To: igt-dev

Adding multi-gt capabilty to rc6_idle and rc6_fence tests

Signed-off-by: Sujaritha Sundaresan <sujaritha.sundaresan@intel.com>
---
 tests/i915/i915_pm_rc6_residency.c | 28 +++++++++++++++++++---------
 1 file changed, 19 insertions(+), 9 deletions(-)

diff --git a/tests/i915/i915_pm_rc6_residency.c b/tests/i915/i915_pm_rc6_residency.c
index b266680ac..d727dab12 100644
--- a/tests/i915/i915_pm_rc6_residency.c
+++ b/tests/i915/i915_pm_rc6_residency.c
@@ -376,7 +376,7 @@ static void kill_children(int sig)
 	signal(sig, old);
 }
 
-static void rc6_idle(int i915, uint32_t ctx_id, uint64_t flags)
+static void rc6_idle(int i915, uint32_t ctx_id, uint64_t flags, unsigned int gt)
 {
 	const int64_t duration_ns = SLEEP_DURATION * (int64_t)NSEC_PER_SEC;
 	const int tolerance = 20; /* Some RC6 is better than none! */
@@ -397,7 +397,7 @@ static void rc6_idle(int i915, uint32_t ctx_id, uint64_t flags)
 	struct igt_power gpu;
 	int fd;
 
-	fd = open_pmu(i915, I915_PMU_RC6_RESIDENCY);
+	fd = open_pmu(i915, __I915_PMU_RC6_RESIDENCY(gt));
 	igt_drop_caches_set(i915, DROP_IDLE);
 	igt_require(__pmu_wait_for_rc6(fd));
 	igt_power_open(i915, &gpu, "gpu");
@@ -471,12 +471,13 @@ static void rc6_idle(int i915, uint32_t ctx_id, uint64_t flags)
 	}
 }
 
-static void rc6_fence(int i915, const intel_ctx_t *ctx)
+static void rc6_fence(int i915, unsigned int gt)
 {
 	const int64_t duration_ns = SLEEP_DURATION * (int64_t)NSEC_PER_SEC;
 	const int tolerance = 20; /* Some RC6 is better than none! */
 	const unsigned int gen = intel_gen(intel_get_drm_devid(i915));
 	const struct intel_execution_engine2 *e;
+	const intel_ctx_t *ctx;
 	struct power_sample sample[2];
 	unsigned long slept;
 	uint64_t rc6, ts[2], ahnd;
@@ -485,7 +486,7 @@ static void rc6_fence(int i915, const intel_ctx_t *ctx)
 
 	igt_require_sw_sync();
 
-	fd = open_pmu(i915, I915_PMU_RC6_RESIDENCY);
+	fd = open_pmu(i915, __I915_PMU_RC6_RESIDENCY(gt));
 	igt_drop_caches_set(i915, DROP_IDLE);
 	igt_require(__pmu_wait_for_rc6(fd));
 	igt_power_open(i915, &gpu, "gpu");
@@ -509,6 +510,7 @@ static void rc6_fence(int i915, const intel_ctx_t *ctx)
 	assert_within_epsilon(rc6, ts[1] - ts[0], 5);
 
 	/* Submit but delay execution, we should be idle and conserving power */
+	ctx = intel_ctx_create_for_gt(i915, gt);
 	ahnd = get_reloc_ahnd(i915, ctx->id);
 	for_each_ctx_engine(i915, ctx, e) {
 		igt_spin_t *spin;
@@ -550,6 +552,7 @@ static void rc6_fence(int i915, const intel_ctx_t *ctx)
 		gem_quiescent_gpu(i915);
 	}
 	put_ahnd(ahnd);
+	intel_ctx_destroy(i915, ctx);
 
 	igt_power_close(&gpu);
 	close(fd);
@@ -558,6 +561,7 @@ static void rc6_fence(int i915, const intel_ctx_t *ctx)
 igt_main
 {
 	int i915 = -1;
+	int dir, gt;
 	const intel_ctx_t *ctx;
 
 	/* Use drm_open_driver to verify device existence */
@@ -572,10 +576,14 @@ igt_main
 		igt_require_gem(i915);
 		gem_quiescent_gpu(i915);
 
-		for_each_ctx_engine(i915, ctx, e) {
-			if (e->instance == 0) {
-				igt_dynamic_f("%s", e->name)
-					rc6_idle(i915, ctx->id, e->flags);
+		i915_for_each_gt(i915, dir, gt) {
+			ctx = intel_ctx_create_for_gt(i915, gt);
+			for_each_ctx_engine(i915, ctx, e) {
+				if (e->instance == 0) {
+					igt_dynamic_f("%s", gt, e->name)
+						rc6_idle(i915, ctx->id, e->flags, gt);
+				}
+			intel_ctx_destroy(i915, ctx);
 			}
 		}
 	}
@@ -584,7 +592,9 @@ igt_main
 		igt_require_gem(i915);
 		gem_quiescent_gpu(i915);
 
-		rc6_fence(i915, ctx);
+		i915_for_each_gt(i915, dir, gt)
+			igt_dynamic_f("gt%u", gt)
+				rc6_fence(i915, gt);
 	}
 
 	igt_subtest_group {
-- 
2.25.1

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

* [igt-dev] ✗ GitLab.Pipeline: warning for tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test
  2023-08-21 12:57 [igt-dev] [PATCH i-g-t] tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test Sujaritha Sundaresan
@ 2023-08-21 13:22 ` Patchwork
  2023-08-21 13:51 ` [igt-dev] ○ CI.xeBAT: info " Patchwork
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2023-08-21 13:22 UTC (permalink / raw)
  To: Sundaresan, Sujaritha; +Cc: igt-dev

== Series Details ==

Series: tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test
URL   : https://patchwork.freedesktop.org/series/122703/
State : warning

== Summary ==

Pipeline status: FAILED.

see https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/966716 for the overview.

containers:igt has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/47777552):
  Downloading artifacts for build:tests-fedora (47777537)...
  Downloading artifacts from coordinator... ok        host=gitlab.freedesktop.org id=47777537 responseStatus=200 OK token=64_YKQdC
  section_end:1692623929:download_artifacts
  section_start:1692623929:step_script
  Executing "step_script" stage of the job script
  Using docker image sha256:594aa868d31ee3304dee8cae8a3433c89a6fcfcf6c7d420c04cce22f60147176 for registry.freedesktop.org/wayland/ci-templates/buildah:2019-08-13.0 with digest registry.freedesktop.org/wayland/ci-templates/buildah@sha256:7dbcf22cd2c1c7d49db0dc7b4ab207c3d6a4a09bd81cc3b71a688d3727d8749f ...
  $ /host/bin/curl -s -L --cacert /host/ca-certificates.crt --retry 4 -f --retry-delay 60 https://gitlab.freedesktop.org/freedesktop/helm-gitlab-infra/-/raw/main/runner-gating/runner-gating.sh | sh
  Checking if the user of the pipeline is allowed...
  Checking if the job's project is part of a well-known group...
  Thank you for contributing to freedesktop.org
  $ podman login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
  Login Succeeded!
  $ .gitlab-ci/pull-or-rebuild.sh igt Dockerfile igt
  Error: could not get runtime: error configuring CNI network plugin: could not create new watcher too many open files
  section_end:1692623931:step_script
  section_start:1692623931:cleanup_file_variables
  Cleaning up project directory and file based variables
  section_end:1692623931:cleanup_file_variables
  ERROR: Job failed: exit code 1

== Logs ==

For more details see: https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/966716

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

* [igt-dev] ○ CI.xeBAT: info for tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test
  2023-08-21 12:57 [igt-dev] [PATCH i-g-t] tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test Sujaritha Sundaresan
  2023-08-21 13:22 ` [igt-dev] ✗ GitLab.Pipeline: warning for " Patchwork
@ 2023-08-21 13:51 ` Patchwork
  2023-08-21 13:58 ` [igt-dev] ✗ Fi.CI.BAT: failure " Patchwork
  2023-08-22  5:36 ` [igt-dev] [PATCH i-g-t] " Riana Tauro
  3 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2023-08-21 13:51 UTC (permalink / raw)
  To: Sundaresan, Sujaritha; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 374 bytes --]

== Series Details ==

Series: tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test
URL   : https://patchwork.freedesktop.org/series/122703/
State : info

== Summary ==

Participating hosts:
bat-atsm-2
bat-dg2-oem2
bat-adlp-7
Missing hosts results[0]:
Results: [IGTPW_9626](https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_9626/index.html)



[-- Attachment #2: Type: text/html, Size: 884 bytes --]

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

* [igt-dev] ✗ Fi.CI.BAT: failure for tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test
  2023-08-21 12:57 [igt-dev] [PATCH i-g-t] tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test Sujaritha Sundaresan
  2023-08-21 13:22 ` [igt-dev] ✗ GitLab.Pipeline: warning for " Patchwork
  2023-08-21 13:51 ` [igt-dev] ○ CI.xeBAT: info " Patchwork
@ 2023-08-21 13:58 ` Patchwork
  2023-08-22  5:36 ` [igt-dev] [PATCH i-g-t] " Riana Tauro
  3 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2023-08-21 13:58 UTC (permalink / raw)
  To: Sundaresan, Sujaritha; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 7904 bytes --]

== Series Details ==

Series: tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test
URL   : https://patchwork.freedesktop.org/series/122703/
State : failure

== Summary ==

CI Bug Log - changes from IGT_7448 -> IGTPW_9626
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_9626 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_9626, 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/IGTPW_9626/index.html

Participating hosts (40 -> 39)
------------------------------

  Additional (1): fi-kbl-soraka 
  Missing    (2): fi-snb-2520m fi-pnv-d510 

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@dmabuf@all-tests@sanitycheck:
    - fi-cfl-8109u:       [PASS][1] -> [ABORT][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7448/fi-cfl-8109u/igt@dmabuf@all-tests@sanitycheck.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/fi-cfl-8109u/igt@dmabuf@all-tests@sanitycheck.html

  * igt@gem_exec_suspend@basic-s0@lmem0:
    - bat-dg2-9:          [PASS][3] -> [INCOMPLETE][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7448/bat-dg2-9/igt@gem_exec_suspend@basic-s0@lmem0.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/bat-dg2-9/igt@gem_exec_suspend@basic-s0@lmem0.html

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

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

### IGT changes ###

#### Issues hit ####

  * igt@core_auth@basic-auth:
    - bat-adlp-11:        NOTRUN -> [ABORT][5] ([i915#9164])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/bat-adlp-11/igt@core_auth@basic-auth.html

  * igt@dmabuf@all-tests@dma_fence:
    - fi-cfl-8109u:       [PASS][6] -> [DMESG-FAIL][7] ([i915#8189])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7448/fi-cfl-8109u/igt@dmabuf@all-tests@dma_fence.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/fi-cfl-8109u/igt@dmabuf@all-tests@dma_fence.html
    - bat-atsm-1:         [PASS][8] -> [DMESG-FAIL][9] ([i915#8189])
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7448/bat-atsm-1/igt@dmabuf@all-tests@dma_fence.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/bat-atsm-1/igt@dmabuf@all-tests@dma_fence.html

  * igt@dmabuf@all-tests@sanitycheck:
    - bat-atsm-1:         [PASS][10] -> [ABORT][11] ([i915#7699])
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7448/bat-atsm-1/igt@dmabuf@all-tests@sanitycheck.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/bat-atsm-1/igt@dmabuf@all-tests@sanitycheck.html

  * igt@gem_exec_suspend@basic-s3@smem:
    - bat-rpls-2:         [PASS][12] -> [ABORT][13] ([i915#6687] / [i915#7978] / [i915#8668])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7448/bat-rpls-2/igt@gem_exec_suspend@basic-s3@smem.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/bat-rpls-2/igt@gem_exec_suspend@basic-s3@smem.html

  * igt@gem_huc_copy@huc-copy:
    - fi-kbl-soraka:      NOTRUN -> [SKIP][14] ([fdo#109271] / [i915#2190])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/fi-kbl-soraka/igt@gem_huc_copy@huc-copy.html

  * igt@gem_lmem_swapping@basic:
    - fi-kbl-soraka:      NOTRUN -> [SKIP][15] ([fdo#109271] / [i915#4613]) +3 similar issues
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/fi-kbl-soraka/igt@gem_lmem_swapping@basic.html

  * igt@i915_selftest@live@gt_pm:
    - fi-kbl-soraka:      NOTRUN -> [DMESG-FAIL][16] ([i915#1886] / [i915#7913])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/fi-kbl-soraka/igt@i915_selftest@live@gt_pm.html

  * igt@i915_selftest@live@migrate:
    - bat-adlp-9:         [PASS][17] -> [DMESG-FAIL][18] ([i915#7699] / [i915#7913])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7448/bat-adlp-9/igt@i915_selftest@live@migrate.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/bat-adlp-9/igt@i915_selftest@live@migrate.html

  * igt@kms_addfb_basic@addfb25-bad-modifier:
    - fi-kbl-soraka:      NOTRUN -> [INCOMPLETE][19] ([i915#8617])
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/fi-kbl-soraka/igt@kms_addfb_basic@addfb25-bad-modifier.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
    - fi-kbl-soraka:      NOTRUN -> [SKIP][20] ([fdo#109271]) +8 similar issues
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/fi-kbl-soraka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html

  * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-a-vga-1:
    - fi-ivb-3770:        NOTRUN -> [DMESG-WARN][21] ([i915#8841]) +2 similar issues
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/fi-ivb-3770/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-a-vga-1.html

  
#### Possible fixes ####

  * igt@i915_selftest@live@gt_heartbeat:
    - fi-kbl-x1275:       [DMESG-FAIL][22] ([i915#5334] / [i915#7872]) -> [PASS][23]
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7448/fi-kbl-x1275/igt@i915_selftest@live@gt_heartbeat.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/fi-kbl-x1275/igt@i915_selftest@live@gt_heartbeat.html

  
#### Warnings ####

  * igt@i915_module_load@load:
    - bat-adlp-11:        [ABORT][24] ([i915#4423]) -> [DMESG-WARN][25] ([i915#4423])
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7448/bat-adlp-11/igt@i915_module_load@load.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/bat-adlp-11/igt@i915_module_load@load.html

  * igt@kms_psr@cursor_plane_move:
    - bat-rplp-1:         [SKIP][26] ([i915#1072]) -> [ABORT][27] ([i915#8469] / [i915#8668])
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7448/bat-rplp-1/igt@kms_psr@cursor_plane_move.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/bat-rplp-1/igt@kms_psr@cursor_plane_move.html

  
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1886]: https://gitlab.freedesktop.org/drm/intel/issues/1886
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#4423]: https://gitlab.freedesktop.org/drm/intel/issues/4423
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
  [i915#6687]: https://gitlab.freedesktop.org/drm/intel/issues/6687
  [i915#7699]: https://gitlab.freedesktop.org/drm/intel/issues/7699
  [i915#7872]: https://gitlab.freedesktop.org/drm/intel/issues/7872
  [i915#7913]: https://gitlab.freedesktop.org/drm/intel/issues/7913
  [i915#7978]: https://gitlab.freedesktop.org/drm/intel/issues/7978
  [i915#8189]: https://gitlab.freedesktop.org/drm/intel/issues/8189
  [i915#8469]: https://gitlab.freedesktop.org/drm/intel/issues/8469
  [i915#8617]: https://gitlab.freedesktop.org/drm/intel/issues/8617
  [i915#8668]: https://gitlab.freedesktop.org/drm/intel/issues/8668
  [i915#8841]: https://gitlab.freedesktop.org/drm/intel/issues/8841
  [i915#9164]: https://gitlab.freedesktop.org/drm/intel/issues/9164


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7448 -> IGTPW_9626

  CI-20190529: 20190529
  CI_DRM_13538: 19f1cd24387fc8bbb63a2c1a74080e73a8f53f5f @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_9626: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/index.html
  IGT_7448: 84aa6d50648d9349fb4f1520f37e5374908c9f4d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9626/index.html

[-- Attachment #2: Type: text/html, Size: 9390 bytes --]

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

* Re: [igt-dev] [PATCH i-g-t] tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test
  2023-08-21 12:57 [igt-dev] [PATCH i-g-t] tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test Sujaritha Sundaresan
                   ` (2 preceding siblings ...)
  2023-08-21 13:58 ` [igt-dev] ✗ Fi.CI.BAT: failure " Patchwork
@ 2023-08-22  5:36 ` Riana Tauro
  2023-08-22  5:39   ` Sundaresan, Sujaritha
  3 siblings, 1 reply; 6+ messages in thread
From: Riana Tauro @ 2023-08-22  5:36 UTC (permalink / raw)
  To: Sujaritha Sundaresan, igt-dev

Hi Suja

typo in the patch header

On 8/21/2023 6:27 PM, Sujaritha Sundaresan wrote:
> Adding multi-gt capabilty to rc6_idle and rc6_fence tests
> 
> Signed-off-by: Sujaritha Sundaresan <sujaritha.sundaresan@intel.com>
> ---
>   tests/i915/i915_pm_rc6_residency.c | 28 +++++++++++++++++++---------
>   1 file changed, 19 insertions(+), 9 deletions(-)
> 
> diff --git a/tests/i915/i915_pm_rc6_residency.c b/tests/i915/i915_pm_rc6_residency.c
> index b266680ac..d727dab12 100644
> --- a/tests/i915/i915_pm_rc6_residency.c
> +++ b/tests/i915/i915_pm_rc6_residency.c
> @@ -376,7 +376,7 @@ static void kill_children(int sig)
>   	signal(sig, old);
>   }
>   
> -static void rc6_idle(int i915, uint32_t ctx_id, uint64_t flags)
> +static void rc6_idle(int i915, uint32_t ctx_id, uint64_t flags, unsigned int gt)
>   {
>   	const int64_t duration_ns = SLEEP_DURATION * (int64_t)NSEC_PER_SEC;
>   	const int tolerance = 20; /* Some RC6 is better than none! */
> @@ -397,7 +397,7 @@ static void rc6_idle(int i915, uint32_t ctx_id, uint64_t flags)
>   	struct igt_power gpu;
>   	int fd;
>   
> -	fd = open_pmu(i915, I915_PMU_RC6_RESIDENCY);
> +	fd = open_pmu(i915, __I915_PMU_RC6_RESIDENCY(gt));
>   	igt_drop_caches_set(i915, DROP_IDLE);
>   	igt_require(__pmu_wait_for_rc6(fd));
>   	igt_power_open(i915, &gpu, "gpu");
> @@ -471,12 +471,13 @@ static void rc6_idle(int i915, uint32_t ctx_id, uint64_t flags)
>   	}
>   }
>   
> -static void rc6_fence(int i915, const intel_ctx_t *ctx)
> +static void rc6_fence(int i915, unsigned int gt)
>   {
>   	const int64_t duration_ns = SLEEP_DURATION * (int64_t)NSEC_PER_SEC;
>   	const int tolerance = 20; /* Some RC6 is better than none! */
>   	const unsigned int gen = intel_gen(intel_get_drm_devid(i915));
>   	const struct intel_execution_engine2 *e;
> +	const intel_ctx_t *ctx;
>   	struct power_sample sample[2];
>   	unsigned long slept;
>   	uint64_t rc6, ts[2], ahnd;
> @@ -485,7 +486,7 @@ static void rc6_fence(int i915, const intel_ctx_t *ctx)
>   
>   	igt_require_sw_sync();
>   
> -	fd = open_pmu(i915, I915_PMU_RC6_RESIDENCY);
> +	fd = open_pmu(i915, __I915_PMU_RC6_RESIDENCY(gt));
>   	igt_drop_caches_set(i915, DROP_IDLE);
>   	igt_require(__pmu_wait_for_rc6(fd));
>   	igt_power_open(i915, &gpu, "gpu");
> @@ -509,6 +510,7 @@ static void rc6_fence(int i915, const intel_ctx_t *ctx)
>   	assert_within_epsilon(rc6, ts[1] - ts[0], 5);
>   
>   	/* Submit but delay execution, we should be idle and conserving power */
> +	ctx = intel_ctx_create_for_gt(i915, gt);
>   	ahnd = get_reloc_ahnd(i915, ctx->id);
>   	for_each_ctx_engine(i915, ctx, e) {
>   		igt_spin_t *spin;
> @@ -550,6 +552,7 @@ static void rc6_fence(int i915, const intel_ctx_t *ctx)
>   		gem_quiescent_gpu(i915);
>   	}
>   	put_ahnd(ahnd);
> +	intel_ctx_destroy(i915, ctx);
>   
>   	igt_power_close(&gpu);
>   	close(fd);
> @@ -558,6 +561,7 @@ static void rc6_fence(int i915, const intel_ctx_t *ctx)
>   igt_main
>   {
>   	int i915 = -1;
> +	int dir, gt;
>   	const intel_ctx_t *ctx;
> 
Remove intel_ctx_create_all_physical from igt_fixture since we are not
using it anywhere
>   	/* Use drm_open_driver to verify device existence */
> @@ -572,10 +576,14 @@ igt_main
>   		igt_require_gem(i915);
>   		gem_quiescent_gpu(i915);
>   
> -		for_each_ctx_engine(i915, ctx, e) {
> -			if (e->instance == 0) {
> -				igt_dynamic_f("%s", e->name)
> -					rc6_idle(i915, ctx->id, e->flags);
> +		i915_for_each_gt(i915, dir, gt) {
> +			ctx = intel_ctx_create_for_gt(i915, gt);
> +			for_each_ctx_engine(i915, ctx, e) {
> +				if (e->instance == 0) {
> +					igt_dynamic_f("%s", gt, e->name)
format specifier missing for gt.
> +						rc6_idle(i915, ctx->id, e->flags, gt);
> +				}
> +			intel_ctx_destroy(i915, ctx);
>   			}
>   		}
>   	}
> @@ -584,7 +592,9 @@ igt_main
>   		igt_require_gem(i915);
>   		gem_quiescent_gpu(i915);
This should be changed from igt_subtest to igt_subtest_with_dynamic.

Thanks
Riana
>   
> -		rc6_fence(i915, ctx);
> +		i915_for_each_gt(i915, dir, gt)
> +			igt_dynamic_f("gt%u", gt)
> +				rc6_fence(i915, gt);
>   	}
>   
>   	igt_subtest_group {

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

* Re: [igt-dev] [PATCH i-g-t] tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test
  2023-08-22  5:36 ` [igt-dev] [PATCH i-g-t] " Riana Tauro
@ 2023-08-22  5:39   ` Sundaresan, Sujaritha
  0 siblings, 0 replies; 6+ messages in thread
From: Sundaresan, Sujaritha @ 2023-08-22  5:39 UTC (permalink / raw)
  To: Riana Tauro, igt-dev


On 8/22/2023 11:06 AM, Riana Tauro wrote:
> Hi Suja
>
> typo in the patch header
Will change
>
> On 8/21/2023 6:27 PM, Sujaritha Sundaresan wrote:
>> Adding multi-gt capabilty to rc6_idle and rc6_fence tests
>>
>> Signed-off-by: Sujaritha Sundaresan <sujaritha.sundaresan@intel.com>
>> ---
>>   tests/i915/i915_pm_rc6_residency.c | 28 +++++++++++++++++++---------
>>   1 file changed, 19 insertions(+), 9 deletions(-)
>>
>> diff --git a/tests/i915/i915_pm_rc6_residency.c 
>> b/tests/i915/i915_pm_rc6_residency.c
>> index b266680ac..d727dab12 100644
>> --- a/tests/i915/i915_pm_rc6_residency.c
>> +++ b/tests/i915/i915_pm_rc6_residency.c
>> @@ -376,7 +376,7 @@ static void kill_children(int sig)
>>       signal(sig, old);
>>   }
>>   -static void rc6_idle(int i915, uint32_t ctx_id, uint64_t flags)
>> +static void rc6_idle(int i915, uint32_t ctx_id, uint64_t flags, 
>> unsigned int gt)
>>   {
>>       const int64_t duration_ns = SLEEP_DURATION * 
>> (int64_t)NSEC_PER_SEC;
>>       const int tolerance = 20; /* Some RC6 is better than none! */
>> @@ -397,7 +397,7 @@ static void rc6_idle(int i915, uint32_t ctx_id, 
>> uint64_t flags)
>>       struct igt_power gpu;
>>       int fd;
>>   -    fd = open_pmu(i915, I915_PMU_RC6_RESIDENCY);
>> +    fd = open_pmu(i915, __I915_PMU_RC6_RESIDENCY(gt));
>>       igt_drop_caches_set(i915, DROP_IDLE);
>>       igt_require(__pmu_wait_for_rc6(fd));
>>       igt_power_open(i915, &gpu, "gpu");
>> @@ -471,12 +471,13 @@ static void rc6_idle(int i915, uint32_t ctx_id, 
>> uint64_t flags)
>>       }
>>   }
>>   -static void rc6_fence(int i915, const intel_ctx_t *ctx)
>> +static void rc6_fence(int i915, unsigned int gt)
>>   {
>>       const int64_t duration_ns = SLEEP_DURATION * 
>> (int64_t)NSEC_PER_SEC;
>>       const int tolerance = 20; /* Some RC6 is better than none! */
>>       const unsigned int gen = intel_gen(intel_get_drm_devid(i915));
>>       const struct intel_execution_engine2 *e;
>> +    const intel_ctx_t *ctx;
>>       struct power_sample sample[2];
>>       unsigned long slept;
>>       uint64_t rc6, ts[2], ahnd;
>> @@ -485,7 +486,7 @@ static void rc6_fence(int i915, const intel_ctx_t 
>> *ctx)
>>         igt_require_sw_sync();
>>   -    fd = open_pmu(i915, I915_PMU_RC6_RESIDENCY);
>> +    fd = open_pmu(i915, __I915_PMU_RC6_RESIDENCY(gt));
>>       igt_drop_caches_set(i915, DROP_IDLE);
>>       igt_require(__pmu_wait_for_rc6(fd));
>>       igt_power_open(i915, &gpu, "gpu");
>> @@ -509,6 +510,7 @@ static void rc6_fence(int i915, const intel_ctx_t 
>> *ctx)
>>       assert_within_epsilon(rc6, ts[1] - ts[0], 5);
>>         /* Submit but delay execution, we should be idle and 
>> conserving power */
>> +    ctx = intel_ctx_create_for_gt(i915, gt);
>>       ahnd = get_reloc_ahnd(i915, ctx->id);
>>       for_each_ctx_engine(i915, ctx, e) {
>>           igt_spin_t *spin;
>> @@ -550,6 +552,7 @@ static void rc6_fence(int i915, const intel_ctx_t 
>> *ctx)
>>           gem_quiescent_gpu(i915);
>>       }
>>       put_ahnd(ahnd);
>> +    intel_ctx_destroy(i915, ctx);
>>         igt_power_close(&gpu);
>>       close(fd);
>> @@ -558,6 +561,7 @@ static void rc6_fence(int i915, const intel_ctx_t 
>> *ctx)
>>   igt_main
>>   {
>>       int i915 = -1;
>> +    int dir, gt;
>>       const intel_ctx_t *ctx;
>>
> Remove intel_ctx_create_all_physical from igt_fixture since we are not
> using it anywhere
Sure will remove the redundant code
>>       /* Use drm_open_driver to verify device existence */
>> @@ -572,10 +576,14 @@ igt_main
>>           igt_require_gem(i915);
>>           gem_quiescent_gpu(i915);
>>   -        for_each_ctx_engine(i915, ctx, e) {
>> -            if (e->instance == 0) {
>> -                igt_dynamic_f("%s", e->name)
>> -                    rc6_idle(i915, ctx->id, e->flags);
>> +        i915_for_each_gt(i915, dir, gt) {
>> +            ctx = intel_ctx_create_for_gt(i915, gt);
>> +            for_each_ctx_engine(i915, ctx, e) {
>> +                if (e->instance == 0) {
>> +                    igt_dynamic_f("%s", gt, e->name)
> format specifier missing for gt.
Will fix
>> +                        rc6_idle(i915, ctx->id, e->flags, gt);
>> +                }
>> +            intel_ctx_destroy(i915, ctx);
>>               }
>>           }
>>       }
>> @@ -584,7 +592,9 @@ igt_main
>>           igt_require_gem(i915);
>>           gem_quiescent_gpu(i915);
> This should be changed from igt_subtest to igt_subtest_with_dynamic.
>
> Thanks
> Riana

I have a feeling I sent an old patch instead of the latest version. 
Because the test would not pass with this patch.

Will double check and resend

Thanks for the review,

Suja

>>   -        rc6_fence(i915, ctx);
>> +        i915_for_each_gt(i915, dir, gt)
>> +            igt_dynamic_f("gt%u", gt)
>> +                rc6_fence(i915, gt);
>>       }
>>         igt_subtest_group {

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

end of thread, other threads:[~2023-08-22  5:40 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-21 12:57 [igt-dev] [PATCH i-g-t] tests/i915_pm_rc6_residency: Add mutli-gt functionality to rc6_idle and rc6_fence test Sujaritha Sundaresan
2023-08-21 13:22 ` [igt-dev] ✗ GitLab.Pipeline: warning for " Patchwork
2023-08-21 13:51 ` [igt-dev] ○ CI.xeBAT: info " Patchwork
2023-08-21 13:58 ` [igt-dev] ✗ Fi.CI.BAT: failure " Patchwork
2023-08-22  5:36 ` [igt-dev] [PATCH i-g-t] " Riana Tauro
2023-08-22  5:39   ` Sundaresan, Sujaritha

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox