* [PATCH i-g-t 1/2] tests/intel/xe_pm: Install fw close exit handler before rpm tests
@ 2024-07-01 14:54 Badal Nilawar
2024-07-01 14:54 ` [PATCH i-g-t 2/2] tests/intel/xe_pm: Extend mocs-rpm test to support D3Cold Badal Nilawar
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Badal Nilawar @ 2024-07-01 14:54 UTC (permalink / raw)
To: igt-dev; +Cc: rodrigo.vivi, janga.rahul.kumar
Move code to install fw close exit handler before rpm tests
as some of the tests uses fw.
Fixes: a3c590fbb5eb ("tests/intel/xe_pm: Convert mmap tests to use existing d3 helpers")
Signed-off-by: Badal Nilawar <badal.nilawar@intel.com>
---
tests/intel/xe_pm.c | 32 +++++++++++++++-----------------
1 file changed, 15 insertions(+), 17 deletions(-)
diff --git a/tests/intel/xe_pm.c b/tests/intel/xe_pm.c
index 5a9e4858a..b30e94a2a 100644
--- a/tests/intel/xe_pm.c
+++ b/tests/intel/xe_pm.c
@@ -769,6 +769,10 @@ igt_main
test_mocs_suspend_resume(device, s->state);
}
+ igt_fixture {
+ igt_install_exit_handler(close_fw_handle);
+ }
+
for (const struct d_state *d = d_states; d->name; d++) {
igt_subtest_f("%s-basic", d->name) {
igt_assert(setup_d3(device, d->state));
@@ -823,24 +827,18 @@ igt_main
}
}
- igt_subtest_group {
- igt_fixture {
- igt_install_exit_handler(close_fw_handle);
- }
-
- igt_describe("Validate whether card is limited to d3hot,"
- "if vram used > vram threshold");
- igt_subtest("vram-d3cold-threshold") {
- orig_threshold = get_vram_d3cold_threshold(sysfs_fd);
- igt_install_exit_handler(vram_d3cold_threshold_restore);
- test_vram_d3cold_threshold(device, sysfs_fd);
- }
+ igt_describe("Validate whether card is limited to d3hot,"
+ "if vram used > vram threshold");
+ igt_subtest("vram-d3cold-threshold") {
+ orig_threshold = get_vram_d3cold_threshold(sysfs_fd);
+ igt_install_exit_handler(vram_d3cold_threshold_restore);
+ test_vram_d3cold_threshold(device, sysfs_fd);
+ }
- igt_subtest("mocs-rpm") {
- dpms_on_off(device, DRM_MODE_DPMS_OFF);
- test_mocs_suspend_resume(device, NO_SUSPEND);
- dpms_on_off(device, DRM_MODE_DPMS_ON);
- }
+ igt_subtest("mocs-rpm") {
+ dpms_on_off(device, DRM_MODE_DPMS_OFF);
+ test_mocs_suspend_resume(device, NO_SUSPEND);
+ dpms_on_off(device, DRM_MODE_DPMS_ON);
}
igt_fixture {
--
2.34.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH i-g-t 2/2] tests/intel/xe_pm: Extend mocs-rpm test to support D3Cold
2024-07-01 14:54 [PATCH i-g-t 1/2] tests/intel/xe_pm: Install fw close exit handler before rpm tests Badal Nilawar
@ 2024-07-01 14:54 ` Badal Nilawar
2024-07-02 10:49 ` Riana Tauro
2024-07-02 11:45 ` ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/2] tests/intel/xe_pm: Install fw close exit handler before rpm tests Patchwork
2024-07-02 11:51 ` ✗ GitLab.Pipeline: warning " Patchwork
2 siblings, 1 reply; 6+ messages in thread
From: Badal Nilawar @ 2024-07-01 14:54 UTC (permalink / raw)
To: igt-dev; +Cc: rodrigo.vivi, janga.rahul.kumar
Use existing d3 helpers to cover D3Hot and D3Cold.
Signed-off-by: Badal Nilawar <badal.nilawar@intel.com>
---
tests/intel/xe_pm.c | 49 +++++++++++++++++++++++++++++++--------------
1 file changed, 34 insertions(+), 15 deletions(-)
diff --git a/tests/intel/xe_pm.c b/tests/intel/xe_pm.c
index b30e94a2a..eac5ea8a7 100644
--- a/tests/intel/xe_pm.c
+++ b/tests/intel/xe_pm.c
@@ -611,10 +611,15 @@ static void test_mmap(device_t device, uint32_t placement, uint32_t flags,
}
/**
- * SUBTEST: mocs-rpm
+ * SUBTEST: %s-mocs-rpm
* Description:
* Validate mocs register contents over suspend resume
*
+ * arg[2]:
+ *
+ * @d3hot: d3hot
+ * @d3cold: d3cold
+ *
* Functionality: mocs registers
* Run type: FULL
*/
@@ -629,9 +634,14 @@ static void test_mmap(device_t device, uint32_t placement, uint32_t flags,
* @s3: s3
* @s4: s4
*/
-static void test_mocs_suspend_resume(device_t device, int s_state)
+static void test_mocs_suspend_resume(device_t device, enum igt_suspend_state s_state,
+ enum igt_acpi_d_state d_state)
{
int gt;
+ uint64_t active_time;
+ bool check_rpm = (d_state == IGT_ACPI_D3Hot ||
+ d_state == IGT_ACPI_D3Cold);
+
xe_for_each_gt(device.fd_xe, gt) {
char path[256];
@@ -644,19 +654,27 @@ static void test_mocs_suspend_resume(device_t device, int s_state)
igt_debugfs_dump(device.fd_xe, path);
igt_debugfs_read(device.fd_xe, path, mocs_content_pre);
- if (s_state == NO_SUSPEND) {
+ if (check_rpm) {
+ igt_assert(in_d3(device, d_state));
+ active_time = igt_pm_get_runtime_active_time(device.pci_xe);
+
fw_handle = igt_debugfs_open(device.fd_xe, "forcewake_all", O_RDONLY);
igt_assert(fw_handle >= 0);
- igt_assert(igt_get_runtime_pm_status() == IGT_RUNTIME_PM_STATUS_ACTIVE);
+ igt_assert(igt_pm_get_runtime_active_time(device.pci_xe) >
+ active_time);
/* Make sure runtime pm goes back to suspended status after closing forcewake_all */
close(fw_handle);
- igt_assert(igt_wait_for_pm_status(IGT_RUNTIME_PM_STATUS_SUSPENDED));
+ sleep(1);
+
+ igt_assert(in_d3(device, d_state));
} else {
- enum igt_suspend_test test = s_state == SUSPEND_STATE_DISK ?
- SUSPEND_TEST_DEVICES : SUSPEND_TEST_NONE;
+ if (s_state != NO_SUSPEND) {
+ enum igt_suspend_test test = s_state == SUSPEND_STATE_DISK ?
+ SUSPEND_TEST_DEVICES : SUSPEND_TEST_NONE;
- igt_system_suspend_autoresume(s_state, test);
+ igt_system_suspend_autoresume(s_state, test);
+ }
}
igt_assert(igt_debugfs_exists(device.fd_xe, path, O_RDONLY));
igt_debugfs_dump(device.fd_xe, path);
@@ -766,7 +784,7 @@ igt_main
}
igt_subtest_f("%s-mocs", s->name)
- test_mocs_suspend_resume(device, s->state);
+ test_mocs_suspend_resume(device, s->state, NO_RPM);
}
igt_fixture {
@@ -825,6 +843,13 @@ igt_main
igt_pm_set_autosuspend_delay(device.pci_xe, delay_ms);
}
+
+ igt_subtest_f("%s-mocs-rpm", d->name) {
+ igt_assert(setup_d3(device, d->state));
+ test_mocs_suspend_resume(device, NO_SUSPEND, d->state);
+ cleanup_d3(device);
+ }
+
}
igt_describe("Validate whether card is limited to d3hot,"
@@ -835,12 +860,6 @@ igt_main
test_vram_d3cold_threshold(device, sysfs_fd);
}
- igt_subtest("mocs-rpm") {
- dpms_on_off(device, DRM_MODE_DPMS_OFF);
- test_mocs_suspend_resume(device, NO_SUSPEND);
- dpms_on_off(device, DRM_MODE_DPMS_ON);
- }
-
igt_fixture {
close(sysfs_fd);
igt_pm_set_d3cold_allowed(device.pci_slot_name, d3cold_allowed);
--
2.34.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH i-g-t 2/2] tests/intel/xe_pm: Extend mocs-rpm test to support D3Cold
2024-07-01 14:54 ` [PATCH i-g-t 2/2] tests/intel/xe_pm: Extend mocs-rpm test to support D3Cold Badal Nilawar
@ 2024-07-02 10:49 ` Riana Tauro
2024-07-02 16:54 ` Kamil Konieczny
0 siblings, 1 reply; 6+ messages in thread
From: Riana Tauro @ 2024-07-02 10:49 UTC (permalink / raw)
To: Badal Nilawar, igt-dev; +Cc: rodrigo.vivi, janga.rahul.kumar
Hi Badal
On 7/1/2024 8:24 PM, Badal Nilawar wrote:
> Use existing d3 helpers to cover D3Hot and D3Cold.
add description for the test being modified in commit message
>
> Signed-off-by: Badal Nilawar <badal.nilawar@intel.com>
> ---
> tests/intel/xe_pm.c | 49 +++++++++++++++++++++++++++++++--------------
> 1 file changed, 34 insertions(+), 15 deletions(-)
>
> diff --git a/tests/intel/xe_pm.c b/tests/intel/xe_pm.c
> index b30e94a2a..eac5ea8a7 100644
> --- a/tests/intel/xe_pm.c
> +++ b/tests/intel/xe_pm.c
> @@ -611,10 +611,15 @@ static void test_mmap(device_t device, uint32_t placement, uint32_t flags,
> }
>
> /**
> - * SUBTEST: mocs-rpm
> + * SUBTEST: %s-mocs-rpm
%s already denotes the runtime pm state. 'rpm' can be dropped
> * Description:
> * Validate mocs register contents over suspend resume
%s/register/registers
%s/suspend resume/runtime suspend,resume
> *
> + * arg[2]:
%s/arg[2]/arg[1]
> + *
> + * @d3hot: d3hot
> + * @d3cold: d3cold
> + *
> * Functionality: mocs registers
Functionality for the other mocs test is pm - %arg[1]
Should be same
> * Run type: FULL
> */
> @@ -629,9 +634,14 @@ static void test_mmap(device_t device, uint32_t placement, uint32_t flags,
> * @s3: s3
> * @s4: s4
> */
> -static void test_mocs_suspend_resume(device_t device, int s_state)
> +static void test_mocs_suspend_resume(device_t device, enum igt_suspend_state s_state,
> + enum igt_acpi_d_state d_state)
> {
> int gt;
> + uint64_t active_time;
> + bool check_rpm = (d_state == IGT_ACPI_D3Hot ||
> + d_state == IGT_ACPI_D3Cold);
> +
>
> xe_for_each_gt(device.fd_xe, gt) {
It would be good to have a log to identify the gt running this test,
else would be difficult to identify which GT moc registers failed
> char path[256];
> @@ -644,19 +654,27 @@ static void test_mocs_suspend_resume(device_t device, int s_state)
> igt_debugfs_dump(device.fd_xe, path);
> igt_debugfs_read(device.fd_xe, path, mocs_content_pre);
>
> - if (s_state == NO_SUSPEND) {
> + if (check_rpm) {
> + igt_assert(in_d3(device, d_state));
> + active_time = igt_pm_get_runtime_active_time(device.pci_xe);
> +
> fw_handle = igt_debugfs_open(device.fd_xe, "forcewake_all", O_RDONLY);
> igt_assert(fw_handle >= 0);
> - igt_assert(igt_get_runtime_pm_status() == IGT_RUNTIME_PM_STATUS_ACTIVE);
> + igt_assert(igt_pm_get_runtime_active_time(device.pci_xe) >
> + active_time);
>
> /* Make sure runtime pm goes back to suspended status after closing forcewake_all */
> close(fw_handle);
> - igt_assert(igt_wait_for_pm_status(IGT_RUNTIME_PM_STATUS_SUSPENDED));
> + sleep(1);
> +
> + igt_assert(in_d3(device, d_state));
> } else {
> - enum igt_suspend_test test = s_state == SUSPEND_STATE_DISK ?
> - SUSPEND_TEST_DEVICES : SUSPEND_TEST_NONE;
> + if (s_state != NO_SUSPEND) {
> + enum igt_suspend_test test = s_state == SUSPEND_STATE_DISK ?
> + SUSPEND_TEST_DEVICES : SUSPEND_TEST_NONE;
>
> - igt_system_suspend_autoresume(s_state, test);
> + igt_system_suspend_autoresume(s_state, test);
> + }
> }
> igt_assert(igt_debugfs_exists(device.fd_xe, path, O_RDONLY));
> igt_debugfs_dump(device.fd_xe, path);
> @@ -766,7 +784,7 @@ igt_main
> }
>
> igt_subtest_f("%s-mocs", s->name)
add igt_describe
> - test_mocs_suspend_resume(device, s->state);
> + test_mocs_suspend_resume(device, s->state, NO_RPM);
> }
>
> igt_fixture {
> @@ -825,6 +843,13 @@ igt_main
>
> igt_pm_set_autosuspend_delay(device.pci_xe, delay_ms);
> }
add igt_describe
Could you also add the tests temporarily to BAT in these series to check
the CI of the new tests?
Thanks
Riana Tauro
> +
> + igt_subtest_f("%s-mocs-rpm", d->name) {
> + igt_assert(setup_d3(device, d->state));
> + test_mocs_suspend_resume(device, NO_SUSPEND, d->state);
> + cleanup_d3(device);
> + }
> +
> }
>
> igt_describe("Validate whether card is limited to d3hot,"
> @@ -835,12 +860,6 @@ igt_main
> test_vram_d3cold_threshold(device, sysfs_fd);
> }
>
> - igt_subtest("mocs-rpm") {
> - dpms_on_off(device, DRM_MODE_DPMS_OFF);
> - test_mocs_suspend_resume(device, NO_SUSPEND);
> - dpms_on_off(device, DRM_MODE_DPMS_ON);
> - }
> -
> igt_fixture {
> close(sysfs_fd);
> igt_pm_set_d3cold_allowed(device.pci_slot_name, d3cold_allowed);
^ permalink raw reply [flat|nested] 6+ messages in thread
* ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/2] tests/intel/xe_pm: Install fw close exit handler before rpm tests
2024-07-01 14:54 [PATCH i-g-t 1/2] tests/intel/xe_pm: Install fw close exit handler before rpm tests Badal Nilawar
2024-07-01 14:54 ` [PATCH i-g-t 2/2] tests/intel/xe_pm: Extend mocs-rpm test to support D3Cold Badal Nilawar
@ 2024-07-02 11:45 ` Patchwork
2024-07-02 11:51 ` ✗ GitLab.Pipeline: warning " Patchwork
2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2024-07-02 11:45 UTC (permalink / raw)
To: Badal Nilawar; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/2] tests/intel/xe_pm: Install fw close exit handler before rpm tests
URL : https://patchwork.freedesktop.org/series/135601/
State : failure
== Summary ==
IGT patchset build failed on latest successful build
bf723cf88eab8774a5a17794a720f9321f625ffc xe/oa/oa-metricset-codegen: Fix XE_OA_FORMAT_PEC64u64 offsets
Tail of build.log:
[1712/1736] Compiling C object 'lib/76b5a35@@i915_perf@sha/meson-generated_.._i915_perf_metrics_mtlgt3.c.o'.
[1713/1736] Compiling C object 'lib/76b5a35@@i915_perf@sha/meson-generated_.._i915_perf_metrics_acmgt1.c.o'.
[1714/1736] Compiling C object 'runner/527aa9f@@runner_test@exe/runner_tests.c.o'.
[1715/1736] Linking target runner/runner_test.
[1716/1736] Compiling C object 'lib/76b5a35@@i915_perf@sha/meson-generated_.._i915_perf_metrics_acmgt2.c.o'.
[1717/1736] Compiling C object 'lib/76b5a35@@i915_perf@sha/meson-generated_.._i915_perf_metrics_acmgt3.c.o'.
[1718/1736] Linking target lib/libi915_perf.so.1.5.
[1719/1736] Generating symbol file 'lib/76b5a35@@i915_perf@sha/libi915_perf.so.1.5.symbols'.
[1720/1736] Linking target tools/i915-perf/i915-perf-configs.
[1721/1736] Linking target tools/i915-perf/i915-perf-reader.
[1722/1736] Linking target tools/i915-perf/i915-perf-recorder.
[1723/1736] Linking target tests/perf.
[1724/1736] Linking target tests/gem_barrier_race.
[1725/1736] Linking target tests/core_hotunplug.
[1726/1736] Generating core_hotunplug.testlist with a meson_exe.py custom command.
[1727/1736] Generating gem_barrier_race.testlist with a meson_exe.py custom command.
[1728/1736] Generating perf.testlist with a meson_exe.py custom command.
[1729/1736] Generating xe_tests.rst with a custom command.
FAILED: docs/testplan/xe_tests.rst
/usr/src/igt-gpu-tools/scripts/igt_doc.py --config /usr/src/igt-gpu-tools/tests/intel/xe_test_config.json --rest docs/testplan/xe_tests.rst --check-testlist --igt-build-path /opt/igt/build
Traceback (most recent call last):
File "/usr/src/igt-gpu-tools/scripts/igt_doc.py", line 386, in <module>
main()
File "/usr/src/igt-gpu-tools/scripts/igt_doc.py", line 341, in main
tests.check_tests()
File "/usr/src/igt-gpu-tools/scripts/test_list.py", line 1166, in check_tests
subtests = self.expand_dictionary(True)
File "/usr/src/igt-gpu-tools/scripts/test_list.py", line 749, in expand_dictionary
subtest_array = self.expand_subtest(fname, name, test, subtest_only)
File "/usr/src/igt-gpu-tools/scripts/test_list.py", line 655, in expand_subtest
if arg_array[j] is None:
KeyError: 0
[1730/1736] Generating i915_tests.rst with a custom command.
[1731/1736] Generating kms_tests.rst with a custom command.
[1732/1736] Generating intel-ci-tests with a custom command.
FAILED: docs/testplan/intel-ci-tests
/usr/src/igt-gpu-tools/scripts/igt_doc.py --config /usr/src/igt-gpu-tools/tests/intel/i915_test_config.json /usr/src/igt-gpu-tools/tests/intel/kms_test_config.json /usr/src/igt-gpu-tools/tests/intel/xe_test_config.json --intelci-testlist docs/testplan/intel-ci-tests
Traceback (most recent call last):
File "/usr/src/igt-gpu-tools/scripts/igt_doc.py", line 386, in <module>
main()
File "/usr/src/igt-gpu-tools/scripts/igt_doc.py", line 380, in main
(testlist, gpu_set) = tests.gen_intelci_testlist()
File "/usr/src/igt-gpu-tools/scripts/igt_doc.py", line 91, in gen_intelci_testlist
subtest_dict = self.expand_dictionary(True)
File "/usr/src/igt-gpu-tools/scripts/test_list.py", line 749, in expand_dictionary
subtest_array = self.expand_subtest(fname, name, test, subtest_only)
File "/usr/src/igt-gpu-tools/scripts/test_list.py", line 655, in expand_subtest
if arg_array[j] is None:
KeyError: 0
ninja: build stopped: subcommand failed.
^ permalink raw reply [flat|nested] 6+ messages in thread
* ✗ GitLab.Pipeline: warning for series starting with [i-g-t,1/2] tests/intel/xe_pm: Install fw close exit handler before rpm tests
2024-07-01 14:54 [PATCH i-g-t 1/2] tests/intel/xe_pm: Install fw close exit handler before rpm tests Badal Nilawar
2024-07-01 14:54 ` [PATCH i-g-t 2/2] tests/intel/xe_pm: Extend mocs-rpm test to support D3Cold Badal Nilawar
2024-07-02 11:45 ` ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/2] tests/intel/xe_pm: Install fw close exit handler before rpm tests Patchwork
@ 2024-07-02 11:51 ` Patchwork
2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2024-07-02 11:51 UTC (permalink / raw)
To: Badal Nilawar; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/2] tests/intel/xe_pm: Install fw close exit handler before rpm tests
URL : https://patchwork.freedesktop.org/series/135601/
State : warning
== Summary ==
Pipeline status: FAILED.
see https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/1215289 for the overview.
build:tests-debian-meson has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60595848):
/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py --config /builds/gfx-ci/igt-ci-tags/tests/intel/i915_test_config.json /builds/gfx-ci/igt-ci-tags/tests/intel/kms_test_config.json /builds/gfx-ci/igt-ci-tags/tests/intel/xe_test_config.json --intelci-testlist docs/testplan/intel-ci-tests
Traceback (most recent call last):
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 386, in <module>
main()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 380, in main
(testlist, gpu_set) = tests.gen_intelci_testlist()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 91, in gen_intelci_testlist
subtest_dict = self.expand_dictionary(True)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 749, in expand_dictionary
subtest_array = self.expand_subtest(fname, name, test, subtest_only)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 655, in expand_subtest
if arg_array[j] is None:
KeyError: 0
ninja: build stopped: subcommand failed.
section_end:1719920852:step_script
section_start:1719920852:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1719920853:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-debian-meson-arm64 has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60595851):
/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py --config /builds/gfx-ci/igt-ci-tags/tests/intel/xe_test_config.json --rest docs/testplan/xe_tests.rst
Traceback (most recent call last):
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 386, in <module>
main()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 370, in main
tests.print_nested_rest(parse_args.rest)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 933, in print_nested_rest
subtest_dict = self.expand_dictionary(True)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 749, in expand_dictionary
subtest_array = self.expand_subtest(fname, name, test, subtest_only)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 655, in expand_subtest
if arg_array[j] is None:
KeyError: 0
ninja: build stopped: subcommand failed.
section_end:1719920852:step_script
section_start:1719920852:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1719920853:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-debian-meson-armhf has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60595850):
/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py --config /builds/gfx-ci/igt-ci-tags/tests/intel/xe_test_config.json --rest docs/testplan/xe_tests.rst
Traceback (most recent call last):
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 386, in <module>
main()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 370, in main
tests.print_nested_rest(parse_args.rest)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 933, in print_nested_rest
subtest_dict = self.expand_dictionary(True)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 749, in expand_dictionary
subtest_array = self.expand_subtest(fname, name, test, subtest_only)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 655, in expand_subtest
if arg_array[j] is None:
KeyError: 0
ninja: build stopped: subcommand failed.
section_end:1719920819:step_script
section_start:1719920819:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1719920820:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-debian-meson-mips has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60595852):
/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py --config /builds/gfx-ci/igt-ci-tags/tests/intel/xe_test_config.json --rest docs/testplan/xe_tests.rst
Traceback (most recent call last):
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 386, in <module>
main()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 370, in main
tests.print_nested_rest(parse_args.rest)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 933, in print_nested_rest
subtest_dict = self.expand_dictionary(True)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 749, in expand_dictionary
subtest_array = self.expand_subtest(fname, name, test, subtest_only)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 655, in expand_subtest
if arg_array[j] is None:
KeyError: 0
ninja: build stopped: subcommand failed.
section_end:1719920830:step_script
section_start:1719920830:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1719920831:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-debian-minimal has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60595849):
/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py --config /builds/gfx-ci/igt-ci-tags/tests/intel/xe_test_config.json --rest docs/testplan/xe_tests.rst
Traceback (most recent call last):
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 386, in <module>
main()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 370, in main
tests.print_nested_rest(parse_args.rest)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 933, in print_nested_rest
subtest_dict = self.expand_dictionary(True)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 749, in expand_dictionary
subtest_array = self.expand_subtest(fname, name, test, subtest_only)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 655, in expand_subtest
if arg_array[j] is None:
KeyError: 0
ninja: build stopped: subcommand failed.
section_end:1719920766:step_script
section_start:1719920766:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1719920766:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60595843):
/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py --config /builds/gfx-ci/igt-ci-tags/tests/intel/i915_test_config.json /builds/gfx-ci/igt-ci-tags/tests/intel/kms_test_config.json /builds/gfx-ci/igt-ci-tags/tests/intel/xe_test_config.json --intelci-testlist docs/testplan/intel-ci-tests
Traceback (most recent call last):
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 386, in <module>
main()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 380, in main
(testlist, gpu_set) = tests.gen_intelci_testlist()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 91, in gen_intelci_testlist
subtest_dict = self.expand_dictionary(True)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 749, in expand_dictionary
subtest_array = self.expand_subtest(fname, name, test, subtest_only)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 655, in expand_subtest
if arg_array[j] is None:
KeyError: 0
ninja: build stopped: subcommand failed.
section_end:1719920842:step_script
section_start:1719920842:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1719920843:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora-clang has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60595847):
/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py --config /builds/gfx-ci/igt-ci-tags/tests/intel/i915_test_config.json /builds/gfx-ci/igt-ci-tags/tests/intel/kms_test_config.json /builds/gfx-ci/igt-ci-tags/tests/intel/xe_test_config.json --intelci-testlist docs/testplan/intel-ci-tests
Traceback (most recent call last):
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 386, in <module>
main()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 380, in main
(testlist, gpu_set) = tests.gen_intelci_testlist()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 91, in gen_intelci_testlist
subtest_dict = self.expand_dictionary(True)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 749, in expand_dictionary
subtest_array = self.expand_subtest(fname, name, test, subtest_only)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 655, in expand_subtest
if arg_array[j] is None:
KeyError: 0
ninja: build stopped: subcommand failed.
section_end:1719920877:step_script
section_start:1719920877:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1719920877:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora-no-libdrm-nouveau has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60595846):
/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py --config /builds/gfx-ci/igt-ci-tags/tests/intel/i915_test_config.json /builds/gfx-ci/igt-ci-tags/tests/intel/kms_test_config.json /builds/gfx-ci/igt-ci-tags/tests/intel/xe_test_config.json --intelci-testlist docs/testplan/intel-ci-tests
Traceback (most recent call last):
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 386, in <module>
main()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 380, in main
(testlist, gpu_set) = tests.gen_intelci_testlist()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 91, in gen_intelci_testlist
subtest_dict = self.expand_dictionary(True)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 749, in expand_dictionary
subtest_array = self.expand_subtest(fname, name, test, subtest_only)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 655, in expand_subtest
if arg_array[j] is None:
KeyError: 0
ninja: build stopped: subcommand failed.
section_end:1719920844:step_script
section_start:1719920844:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1719920845:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora-no-libunwind has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60595844):
/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py --config /builds/gfx-ci/igt-ci-tags/tests/intel/i915_test_config.json /builds/gfx-ci/igt-ci-tags/tests/intel/kms_test_config.json /builds/gfx-ci/igt-ci-tags/tests/intel/xe_test_config.json --intelci-testlist docs/testplan/intel-ci-tests
Traceback (most recent call last):
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 386, in <module>
main()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 380, in main
(testlist, gpu_set) = tests.gen_intelci_testlist()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 91, in gen_intelci_testlist
subtest_dict = self.expand_dictionary(True)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 749, in expand_dictionary
subtest_array = self.expand_subtest(fname, name, test, subtest_only)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 655, in expand_subtest
if arg_array[j] is None:
KeyError: 0
ninja: build stopped: subcommand failed.
section_end:1719920841:step_script
section_start:1719920841:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1719920842:cleanup_file_variables
ERROR: Job failed: exit code 1
build:tests-fedora-oldest-meson has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/60595845):
/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py --config /builds/gfx-ci/igt-ci-tags/tests/intel/i915_test_config.json /builds/gfx-ci/igt-ci-tags/tests/intel/kms_test_config.json /builds/gfx-ci/igt-ci-tags/tests/intel/xe_test_config.json --intelci-testlist docs/testplan/intel-ci-tests
Traceback (most recent call last):
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 386, in <module>
main()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 380, in main
(testlist, gpu_set) = tests.gen_intelci_testlist()
File "/builds/gfx-ci/igt-ci-tags/scripts/igt_doc.py", line 91, in gen_intelci_testlist
subtest_dict = self.expand_dictionary(True)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 749, in expand_dictionary
subtest_array = self.expand_subtest(fname, name, test, subtest_only)
File "/builds/gfx-ci/igt-ci-tags/scripts/test_list.py", line 655, in expand_subtest
if arg_array[j] is None:
KeyError: 0
ninja: build stopped: subcommand failed.
section_end:1719920851:step_script
section_start:1719920851:cleanup_file_variables
Cleaning up project directory and file based variables
section_end:1719920852:cleanup_file_variables
ERROR: Job failed: exit code 1
== Logs ==
For more details see: https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/1215289
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH i-g-t 2/2] tests/intel/xe_pm: Extend mocs-rpm test to support D3Cold
2024-07-02 10:49 ` Riana Tauro
@ 2024-07-02 16:54 ` Kamil Konieczny
0 siblings, 0 replies; 6+ messages in thread
From: Kamil Konieczny @ 2024-07-02 16:54 UTC (permalink / raw)
To: igt-dev
Cc: Riana Tauro, Badal Nilawar, rodrigo.vivi, janga.rahul.kumar,
Katarzyna Piecielska
Hi Riana,
On 2024-07-02 at 16:19:18 +0530, Riana Tauro wrote:
> Hi Badal
>
> On 7/1/2024 8:24 PM, Badal Nilawar wrote:
> > Use existing d3 helpers to cover D3Hot and D3Cold.
> add description for the test being modified in commit message
> >
> > Signed-off-by: Badal Nilawar <badal.nilawar@intel.com>
> > ---
> > tests/intel/xe_pm.c | 49 +++++++++++++++++++++++++++++++--------------
> > 1 file changed, 34 insertions(+), 15 deletions(-)
> >
> > diff --git a/tests/intel/xe_pm.c b/tests/intel/xe_pm.c
> > index b30e94a2a..eac5ea8a7 100644
> > --- a/tests/intel/xe_pm.c
> > +++ b/tests/intel/xe_pm.c
> > @@ -611,10 +611,15 @@ static void test_mmap(device_t device, uint32_t placement, uint32_t flags,
> > }
> > /**
> > - * SUBTEST: mocs-rpm
> > + * SUBTEST: %s-mocs-rpm
> %s already denotes the runtime pm state. 'rpm' can be dropped
> > * Description:
> > * Validate mocs register contents over suspend resume
> %s/register/registers
> %s/suspend resume/runtime suspend,resume
or just:
* Description: Validate mocs registers contents over runtime suspend and resume
> > *
> > + * arg[2]:
> %s/arg[2]/arg[1]
> > + *
> > + * @d3hot: d3hot
> > + * @d3cold: d3cold
> > + *
> > * Functionality: mocs registers
> Functionality for the other mocs test is pm - %arg[1]
Please do not use '%args[1]' in Functionality or other fields,
this is only for subtests names, also put all these before
describing args[] vars.
+Cc: Katarzyna Piecielska <katarzyna.piecielska@intel.com>
Regards,
Kamil
> Should be same
> > * Run type: FULL
> > */
> > @@ -629,9 +634,14 @@ static void test_mmap(device_t device, uint32_t placement, uint32_t flags,
> > * @s3: s3
> > * @s4: s4
> > */
> > -static void test_mocs_suspend_resume(device_t device, int s_state)
> > +static void test_mocs_suspend_resume(device_t device, enum igt_suspend_state s_state,
> > + enum igt_acpi_d_state d_state)
> > {
> > int gt;
> > + uint64_t active_time;
> > + bool check_rpm = (d_state == IGT_ACPI_D3Hot ||
> > + d_state == IGT_ACPI_D3Cold);
> > +
> > xe_for_each_gt(device.fd_xe, gt) {
> It would be good to have a log to identify the gt running this test,
> else would be difficult to identify which GT moc registers failed
> > char path[256];
> > @@ -644,19 +654,27 @@ static void test_mocs_suspend_resume(device_t device, int s_state)
> > igt_debugfs_dump(device.fd_xe, path);
> > igt_debugfs_read(device.fd_xe, path, mocs_content_pre);
> > - if (s_state == NO_SUSPEND) {
> > + if (check_rpm) {
> > + igt_assert(in_d3(device, d_state));
> > + active_time = igt_pm_get_runtime_active_time(device.pci_xe);
> > +
> > fw_handle = igt_debugfs_open(device.fd_xe, "forcewake_all", O_RDONLY);
> > igt_assert(fw_handle >= 0);
> > - igt_assert(igt_get_runtime_pm_status() == IGT_RUNTIME_PM_STATUS_ACTIVE);
> > + igt_assert(igt_pm_get_runtime_active_time(device.pci_xe) >
> > + active_time);
> > /* Make sure runtime pm goes back to suspended status after closing forcewake_all */
> > close(fw_handle);
> > - igt_assert(igt_wait_for_pm_status(IGT_RUNTIME_PM_STATUS_SUSPENDED));
> > + sleep(1);
> > +
> > + igt_assert(in_d3(device, d_state));
> > } else {
> > - enum igt_suspend_test test = s_state == SUSPEND_STATE_DISK ?
> > - SUSPEND_TEST_DEVICES : SUSPEND_TEST_NONE;
> > + if (s_state != NO_SUSPEND) {
> > + enum igt_suspend_test test = s_state == SUSPEND_STATE_DISK ?
> > + SUSPEND_TEST_DEVICES : SUSPEND_TEST_NONE;
> > - igt_system_suspend_autoresume(s_state, test);
> > + igt_system_suspend_autoresume(s_state, test);
> > + }
> > }
> > igt_assert(igt_debugfs_exists(device.fd_xe, path, O_RDONLY));
> > igt_debugfs_dump(device.fd_xe, path);
> > @@ -766,7 +784,7 @@ igt_main
> > }
> > igt_subtest_f("%s-mocs", s->name)
> add igt_describe
> > - test_mocs_suspend_resume(device, s->state);
> > + test_mocs_suspend_resume(device, s->state, NO_RPM);
> > }
> > igt_fixture {
> > @@ -825,6 +843,13 @@ igt_main
> > igt_pm_set_autosuspend_delay(device.pci_xe, delay_ms);
> > }
> add igt_describe
>
> Could you also add the tests temporarily to BAT in these series to check the
> CI of the new tests?
>
> Thanks
> Riana Tauro
> > +
> > + igt_subtest_f("%s-mocs-rpm", d->name) {
> > + igt_assert(setup_d3(device, d->state));
> > + test_mocs_suspend_resume(device, NO_SUSPEND, d->state);
> > + cleanup_d3(device);
> > + }
> > +
> > }
> > igt_describe("Validate whether card is limited to d3hot,"
> > @@ -835,12 +860,6 @@ igt_main
> > test_vram_d3cold_threshold(device, sysfs_fd);
> > }
> > - igt_subtest("mocs-rpm") {
> > - dpms_on_off(device, DRM_MODE_DPMS_OFF);
> > - test_mocs_suspend_resume(device, NO_SUSPEND);
> > - dpms_on_off(device, DRM_MODE_DPMS_ON);
> > - }
> > -
> > igt_fixture {
> > close(sysfs_fd);
> > igt_pm_set_d3cold_allowed(device.pci_slot_name, d3cold_allowed);
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2024-07-02 16:54 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-01 14:54 [PATCH i-g-t 1/2] tests/intel/xe_pm: Install fw close exit handler before rpm tests Badal Nilawar
2024-07-01 14:54 ` [PATCH i-g-t 2/2] tests/intel/xe_pm: Extend mocs-rpm test to support D3Cold Badal Nilawar
2024-07-02 10:49 ` Riana Tauro
2024-07-02 16:54 ` Kamil Konieczny
2024-07-02 11:45 ` ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/2] tests/intel/xe_pm: Install fw close exit handler before rpm tests Patchwork
2024-07-02 11:51 ` ✗ GitLab.Pipeline: warning " Patchwork
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox