[PATCH v2 8/9] tests/intel/xe_exec_reset: add gt-stress-reset-pm-transition subtest

[email protected]
Newsgroups org.freedesktop.lists.igt-dev
Message-ID <[email protected]>
From: Nishit Sharma <[email protected]>

This test creates a short idle/transition window before VM/context
teardown-recreate, approximating PM transition timing while
reset+submit pressure is active.

Signed-off-by: Nishit Sharma <[email protected]>
---
 tests/intel/xe_exec_reset.c | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/tests/intel/xe_exec_reset.c b/tests/intel/xe_exec_reset.c
index d818173c2..42c2a7efd 100644
--- a/tests/intel/xe_exec_reset.c
+++ b/tests/intel/xe_exec_reset.c
@@ -139,6 +139,7 @@ static void test_spin(int fd, struct drm_xe_engine_class_instance *eci,
 #define RAPID_RESET_STRESS		(0x1 << 19)
 #define DESTROY_VM_CTX_STRESS		(0x1 << 20)
 #define MIXED_ENGINE_STRESS		(0x1 << 21)
+#define PM_TRANSITION_STRESS		(0x1 << 22)
 
 /**
  * SUBTEST: %s-cat-error
@@ -804,7 +805,11 @@ static void submit_jobs(struct gt_thread_data *t)
 		}
 
 		if (((t->flags & INVALIDATE_BO_STRESS) && !(i % 96)) ||
-		    ((t->flags & DESTROY_VM_CTX_STRESS) && !(i % 128))) {
+		    ((t->flags & DESTROY_VM_CTX_STRESS) && !(i % 128)) ||
+		     ((t->flags & PM_TRANSITION_STRESS) && !(i % 160))) {
+			if (t->flags & PM_TRANSITION_STRESS)
+				usleep(20000);
+
 			if (t->flags & MEM_PRESSURE_STRESS) {
 				pressure_bo_destroy(fd, pressure_bos, pressure_count);
 				pressure_count = 0;
@@ -878,6 +883,10 @@ static void *gt_reset_thread(void *data)
  * Description: Stress concurrent GT resets and mixed-engine job submissions
  * Test category: stress test
  *
+ * SUBTEST: gt-stress-reset-pm-transition
+ * Description: Stress concurrent GT resets and job submissions during PM transition windows
+ * Test category: stress test
+ *
  */
 static void
 gt_reset(int fd, int gt, int n_threads, int n_sec, unsigned int flags)
@@ -1103,6 +1112,7 @@ int igt_main()
 		{ "reset-rapid-cycle", RAPID_RESET_STRESS },
 		{ "reset-destroy-vm-context", DESTROY_VM_CTX_STRESS },
 		{ "reset-mixed-engine-usage", MIXED_ENGINE_STRESS | RAPID_RESET_STRESS },
+		{ "reset-pm-transition", PM_TRANSITION_STRESS | DESTROY_VM_CTX_STRESS },
 		{ NULL },
 	};
 	int gt;
-- 
2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.