[PATCH i-g-t v2 14/66] tests/xe_eudebug: Add vm events sanity check
Christoph Manszewski
christoph.manszewski at intel.com
Tue Jul 30 11:44:31 UTC 2024
From: Dominik Grzegorzek <dominik.grzegorzek at intel.com>
Add basic test validating eudebug vm events.
Signed-off-by: Dominik Grzegorzek <dominik.grzegorzek at intel.com>
Cc: Christoph Manszewski <christoph.manszewski at intel.com>
---
tests/intel/xe_eudebug.c | 28 ++++++++++++++++++++++++++--
1 file changed, 26 insertions(+), 2 deletions(-)
diff --git a/tests/intel/xe_eudebug.c b/tests/intel/xe_eudebug.c
index 0cef652e2..7c1c21a33 100644
--- a/tests/intel/xe_eudebug.c
+++ b/tests/intel/xe_eudebug.c
@@ -18,11 +18,27 @@
#include "igt.h"
#include "xe/xe_eudebug.h"
+#define CREATE_VMS (1 << 0)
static void run_basic_client(struct xe_eudebug_client *c)
{
- int fd;
+ int fd, i;
fd = xe_eudebug_client_open_driver(c);
+
+ if (c->flags & CREATE_VMS) {
+ const uint32_t flags[] = {
+ DRM_XE_VM_CREATE_FLAG_SCRATCH_PAGE,
+ DRM_XE_VM_CREATE_FLAG_LR_MODE,
+ };
+ uint32_t vms[ARRAY_SIZE(flags)];
+
+ for (i = 0; i < ARRAY_SIZE(flags); i++)
+ vms[i] = xe_eudebug_client_vm_create(c, fd, flags[i], 0);
+
+ for (i--; i >= 0; i--)
+ xe_eudebug_client_vm_destroy(c, fd, vms[i]);
+ }
+
xe_eudebug_client_close_driver(c, fd);
}
@@ -238,7 +254,12 @@ static void test_read_event(int fd)
* Description:
* Simultaneously attach many debuggers to many processes.
* Each process opens and closes xe drm client.
+ *
+ * SUBTEST: basic-vms
+ * Description:
+ * Attach the debugger to process which creates and destroys a few vms.
*/
+
static void test_basic_sessions(int fd, unsigned int flags, int count)
{
struct xe_eudebug_session **s;
@@ -282,7 +303,10 @@ igt_main
test_basic_sessions(fd, 0, 1);
igt_subtest("multiple-sessions")
- test_basic_sessions(fd, 0, 4);
+ test_basic_sessions(fd, CREATE_VMS, 4);
+
+ igt_subtest("basic-vms")
+ test_basic_sessions(fd, CREATE_VMS, 1);
igt_fixture
drm_close_driver(fd);
--
2.34.1
More information about the igt-dev
mailing list