From: Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com>
To: <priyanka.dandamudi@intel.com>
Cc: <igt-dev@lists.freedesktop.org>
Subject: Re: [PATCH i-g-t 7/7] tests/intel/xe_exec_threads: Extend multi queue testing
Date: Wed, 31 Dec 2025 13:34:56 -0800 [thread overview]
Message-ID: <aVWXAMbNVuCdo__V@nvishwa1-desk> (raw)
In-Reply-To: <20251219120154.695287-8-priyanka.dandamudi@intel.com>
On Fri, Dec 19, 2025 at 05:31:54PM +0530, priyanka.dandamudi@intel.com wrote:
>From: Janga Rahul Kumar <janga.rahul.kumar@intel.com>
>
>Extend multi queue testing to different scenarios.
>
>Signed-off-by: Janga Rahul Kumar <janga.rahul.kumar@intel.com>
Same here. Remove.
>Signed-off-by: Priyanka Dandamudi <priyanka.dandamudi@intel.com>
>---
> tests/intel/xe_exec_threads.c | 163 +++++++++++++++++++++++++++++++++-
> 1 file changed, 160 insertions(+), 3 deletions(-)
>
>diff --git a/tests/intel/xe_exec_threads.c b/tests/intel/xe_exec_threads.c
>index 4bf1cd1b1..0545c7ab6 100644
>--- a/tests/intel/xe_exec_threads.c
>+++ b/tests/intel/xe_exec_threads.c
>@@ -312,9 +312,21 @@ test_compute_mode(int fd, uint32_t vm, uint64_t addr, uint64_t userptr,
> igt_assert(exec_sync != MAP_FAILED);
> memset(exec_sync, 0, sync_size);
>
>- for (i = 0; i < n_exec_queues; i++)
>- exec_queues[i] = xe_exec_queue_create(fd, vm, eci, 0);
>+ for (i = 0; i < n_exec_queues; i++) {
>+ if (flags & MULTI_QUEUE) {
>+ struct drm_xe_ext_set_property multi_queue = {
>+ .base.next_extension = 0,
>+ .base.name = DRM_XE_EXEC_QUEUE_EXTENSION_SET_PROPERTY,
>+ .property = DRM_XE_EXEC_QUEUE_SET_PROPERTY_MULTI_GROUP,
>+ };
>+ uint64_t ext = to_user_pointer(&multi_queue);
>
>+ multi_queue.value = i ? exec_queues[0] : DRM_XE_MULTI_GROUP_CREATE;
>+ exec_queues[i] = xe_exec_queue_create(fd, vm, eci, ext);
>+ } else {
>+ exec_queues[i] = xe_exec_queue_create(fd, vm, eci, 0);
>+ }
>+ }
> pthread_barrier_wait(&barrier);
>
> sync[0].addr = to_user_pointer(&data[0].vm_sync);
>@@ -994,8 +1006,95 @@ static void *thread(void *data)
> * balancer mixed fd userptr invalidate
> * @bal-mixed-fd-userptr-invalidate-race:
> * balancer mixed fd userptr invalidate race
>+ */
>+/**
>+ * SUBTEST: threads-%s
>+ * Mega feature: MultiQ
>+ * Sub-category: MultiQ tests
Same comments as in patch#1 applies here also
regarding SUBTEST name and MultiQ naming.
>+ * Description: Run threads %arg[1] test with multi threads
>+ * arg[1]:
>+ * @multi-queue-basic:
>+ * multi-queue basic
>+ * @multi-queue-userptr:
>+ * multi-queue userptr
>+ * @multi-queue-rebind:
>+ * multi-queue rebind
>+ * @multi-queue-userptr-rebind:
>+ * multi-queue userptr rebind
>+ * @multi-queue-userptr-invalidate:
>+ * multi-queue userptr invalidate
>+ * @multi-queue-userptr-invalidate-race:
>+ * multi-queue userptr invalidate race
> * @multi-queue-shared-vm-basic:
>- * multi-queue shared vm basic test
>+ * multi-queue shared vm basic
Ah I see, the rest of tests are added in this patch.
It is bit confusing though as compute mode variant
support is added in this patch along with other
legacy mode test extensions.
It is probably better to move the above changes in
test_compute_mode also to previous patch with a
compute mode test variant added? Or simply merge
both patches together. It will also remove the
above multi-queue-shared-vm-basic description
change here which is unnecessary.
Also, I don't see cm* test variants being added.
Why not?
Niranjana
>+ * @multi-queue-shared-vm-userptr:
>+ * multi-queue shared vm userptr
>+ * @multi-queue-shared-vm-rebind:
>+ * multi-queue shared vm rebind
>+ * @multi-queue-shared-vm-userptr-rebind:
>+ * multi-queue shared vm userptr rebind
>+ * @multi-queue-rebind-err:
>+ * multi-queue rebind err
>+ * @multi-queue-userptr-rebind-err:
>+ * multi-queue userptr rebind err
>+ * @multi-queue-shared-vm-userptr-invalidate:
>+ * multi-queue shared vm userptr invalidate
>+ * @multi-queue-shared-vm-userptr-invalidate-race:
>+ * multi-queue shared vm userptr invalidate race
>+ * @multi-queue-fd-basic:
>+ * multi-queue fd basic
>+ * @multi-queue-fd-userptr:
>+ * multi-queue fd userptr
>+ * @multi-queue-fd-rebind:
>+ * multi-queue fd rebind
>+ * @multi-queue-fd-userptr-rebind:
>+ * multi-queue fd userptr rebind
>+ * @multi-queue-fd-userptr-invalidate:
>+ * multi-queue fd userptr invalidate
>+ * @multi-queue-fd-userptr-invalidate-race:
>+ * multi-queue fd userptr invalidate race
>+ * @multi-queue-hang-basic:
>+ * multi-queue hang basic
>+ * @multi-queue-hang-fd-userptr-invalidate-race:
>+ * multi-queue hang fd userptr invalidate race
>+ * @multi-queue-cm-fd-userptr-invalidate-race:
>+ * multi-queue compute mode fd userptr invalidate race
>+ * @multi-queue-mixed-basic:
>+ * multi-queue mixed basic
>+ * @multi-queue-mixed-userptr:
>+ * multi-queue-mixed userptr
>+ * @multi-queue-mixed-rebind:
>+ * multi-queue-mixed rebind
>+ * @multi-queue-mixed-userptr-rebind:
>+ * multi-queue-mixed userptr rebind
>+ * @multi-queue-mixed-userptr-invalidate:
>+ * multi-queue-mixed userptr invalidate
>+ * @multi-queue-mixed-userptr-invalidate-race:
>+ * multi-queue-mixed userptr invalidate race
>+ * @multi-queue-mixed-shared-vm-basic:
>+ * multi-queue mixed shared vm basic
>+ * @multi-queue-mixed-shared-vm-userptr:
>+ * multi-queue-mixed shared vm userptr
>+ * @multi-queue-mixed-shared-vm-rebind:
>+ * multi-queue-mixed shared vm rebind
>+ * @multi-queue-mixed-shared-vm-userptr-rebind:
>+ * multi-queue-mixed shared vm userptr rebind
>+ * @multi-queue-mixed-shared-vm-userptr-invalidate:
>+ * multi-queue-mixed shared vm userptr invalidate
>+ * @multi-queue-mixed-shared-vm-userptr-invalidate-race:
>+ * multi-queue-mixed shared vm userptr invalidate race
>+ * @multi-queue-mixed-fd-basic:
>+ * multi-queue mixed fd basic
>+ * @multi-queue-mixed-fd-userptr:
>+ * multi-queue-mixed fd userptr
>+ * @multi-queue-mixed-fd-rebind:
>+ * multi-queue-mixed fd rebind
>+ * @multi-queue-mixed-fd-userptr-rebind:
>+ * multi-queue-mixed fd userptr rebind
>+ * @multi-queue-mixed-fd-userptr-invalidate:
>+ * multi-queue-mixed fd userptr invalidate
>+ * @multi-queue-mixed-fd-userptr-invalidate-race:
>+ * multi-queue-mixed fd userptr invalidate race
> */
>
> static void threads(int fd, int flags)
>@@ -1299,7 +1398,65 @@ int igt_main()
> FD | USERPTR | INVALIDATE },
> { "bal-mixed-fd-userptr-invalidate-race", BALANCER |
> MIXED_MODE | FD | USERPTR | INVALIDATE | RACE },
>+ { "multi-queue-basic", MULTI_QUEUE | 0 },
>+ { "multi-queue-userptr", MULTI_QUEUE | USERPTR },
>+ { "multi-queue-rebind", MULTI_QUEUE | REBIND },
>+ { "multi-queue-userptr-rebind", MULTI_QUEUE | USERPTR | REBIND },
>+ { "multi-queue-userptr-invalidate", MULTI_QUEUE | USERPTR | INVALIDATE },
>+ { "multi-queue-userptr-invalidate-race", MULTI_QUEUE | USERPTR | INVALIDATE |
>+ RACE },
> { "multi-queue-shared-vm-basic", MULTI_QUEUE | SHARED_VM },
>+ { "multi-queue-shared-vm-userptr", MULTI_QUEUE | SHARED_VM | USERPTR },
>+ { "multi-queue-shared-vm-rebind", MULTI_QUEUE | SHARED_VM | REBIND },
>+ { "multi-queue-shared-vm-userptr-rebind", MULTI_QUEUE | SHARED_VM | USERPTR |
>+ REBIND },
>+ { "multi-queue-rebind-err", MULTI_QUEUE | REBIND | REBIND_ERROR },
>+ { "multi-queue-userptr-rebind-err", MULTI_QUEUE | USERPTR | REBIND |
>+ REBIND_ERROR },
>+ { "multi-queue-shared-vm-userptr-invalidate", MULTI_QUEUE | SHARED_VM |
>+ USERPTR | INVALIDATE },
>+ { "multi-queue-shared-vm-userptr-invalidate-race", MULTI_QUEUE | SHARED_VM |
>+ USERPTR | INVALIDATE | RACE },
>+ { "multi-queue-fd-basic", MULTI_QUEUE | FD },
>+ { "multi-queue-fd-userptr", MULTI_QUEUE | FD | USERPTR },
>+ { "multi-queue-fd-rebind", MULTI_QUEUE | FD | REBIND },
>+ { "multi-queue-fd-userptr-rebind", MULTI_QUEUE | FD | USERPTR | REBIND },
>+ { "multi-queue-fd-userptr-invalidate", MULTI_QUEUE | FD | USERPTR |
>+ INVALIDATE },
>+ { "multi-queue-fd-userptr-invalidate-race", MULTI_QUEUE | FD | USERPTR |
>+ INVALIDATE | RACE },
>+ { "multi-queue-hang-basic", MULTI_QUEUE | HANG },
>+ { "multi-queue-hang-fd-userptr-invalidate-race", MULTI_QUEUE | HANG | FD | USERPTR |
>+ INVALIDATE | RACE },
>+ { "multi-queue-cm-fd-userptr-invalidate-race", MULTI_QUEUE | COMPUTE_MODE | FD |
>+ USERPTR | INVALIDATE | RACE },
>+ { "multi-queue-mixed-basic", MULTI_QUEUE | MIXED_MODE },
>+ { "multi-queue-mixed-userptr", MULTI_QUEUE | MIXED_MODE | USERPTR },
>+ { "multi-queue-mixed-rebind", MULTI_QUEUE | MIXED_MODE | REBIND },
>+ { "multi-queue-mixed-userptr-rebind", MULTI_QUEUE | MIXED_MODE | USERPTR | REBIND },
>+ { "multi-queue-mixed-userptr-invalidate", MULTI_QUEUE | MIXED_MODE | USERPTR |
>+ INVALIDATE },
>+ { "multi-queue-mixed-userptr-invalidate-race", MULTI_QUEUE | MIXED_MODE | USERPTR |
>+ INVALIDATE | RACE },
>+ { "multi-queue-mixed-shared-vm-basic", MULTI_QUEUE | MIXED_MODE | SHARED_VM },
>+ { "multi-queue-mixed-shared-vm-userptr", MULTI_QUEUE | MIXED_MODE | SHARED_VM |
>+ USERPTR },
>+ { "multi-queue-mixed-shared-vm-rebind", MULTI_QUEUE | MIXED_MODE | SHARED_VM | REBIND },
>+ { "multi-queue-mixed-shared-vm-userptr-rebind", MULTI_QUEUE | MIXED_MODE | SHARED_VM |
>+ USERPTR | REBIND },
>+ { "multi-queue-mixed-shared-vm-userptr-invalidate", MULTI_QUEUE | MIXED_MODE |
>+ SHARED_VM | USERPTR | INVALIDATE },
>+ { "multi-queue-mixed-shared-vm-userptr-invalidate-race", MULTI_QUEUE | MIXED_MODE |
>+ SHARED_VM | USERPTR | INVALIDATE | RACE },
>+ { "multi-queue-mixed-fd-basic", MULTI_QUEUE | MIXED_MODE | FD },
>+ { "multi-queue-mixed-fd-userptr", MULTI_QUEUE | MIXED_MODE | FD | USERPTR },
>+ { "multi-queue-mixed-fd-rebind", MULTI_QUEUE | MIXED_MODE | FD | REBIND },
>+ { "multi-queue-mixed-fd-userptr-rebind", MULTI_QUEUE | MIXED_MODE | FD | USERPTR |
>+ REBIND },
>+ { "multi-queue-mixed-fd-userptr-invalidate", MULTI_QUEUE | MIXED_MODE | FD |
>+ USERPTR | INVALIDATE },
>+ { "multi-queue-mixed-fd-userptr-invalidate-race", MULTI_QUEUE | MIXED_MODE | FD |
>+ USERPTR | INVALIDATE | RACE },
> { NULL },
> };
> int fd;
>--
>2.43.0
>
next prev parent reply other threads:[~2025-12-31 21:35 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-19 12:01 [PATCH i-g-t 0/7] Extend multi queue feature validation support priyanka.dandamudi
2025-12-19 12:01 ` [PATCH i-g-t 1/7] tests/intel/xe_exec_fault_mode: Add multi queue test support priyanka.dandamudi
2025-12-31 19:55 ` Niranjana Vishwanathapura
2026-01-07 6:24 ` Dandamudi, Priyanka
2025-12-19 12:01 ` [PATCH i-g-t 2/7] tests/intel/xe_evict: Add basic multi queue test priyanka.dandamudi
2026-01-01 0:21 ` Niranjana Vishwanathapura
2026-01-07 6:25 ` Dandamudi, Priyanka
2026-01-01 0:34 ` Niranjana Vishwanathapura
2025-12-19 12:01 ` [PATCH i-g-t 3/7] tests/intel/xe_evict: Add priority for multi queue priyanka.dandamudi
2026-01-01 0:23 ` Niranjana Vishwanathapura
2026-01-14 6:29 ` Dandamudi, Priyanka
2025-12-19 12:01 ` [PATCH i-g-t 4/7] tests/intel/xe_evict: Enhance testing of multi queue functionality priyanka.dandamudi
2026-01-01 0:27 ` Niranjana Vishwanathapura
2026-01-14 6:32 ` Dandamudi, Priyanka
2025-12-19 12:01 ` [PATCH i-g-t 5/7] tests/intel/xe_exec_reset: Add multi queue subtests priyanka.dandamudi
2026-01-01 4:17 ` Niranjana Vishwanathapura
2026-01-14 6:39 ` Dandamudi, Priyanka
2025-12-19 12:01 ` [PATCH i-g-t 6/7] tests/intel/xe_exec_threads: Add multi queue basic test priyanka.dandamudi
2025-12-31 21:15 ` Niranjana Vishwanathapura
2026-01-01 4:19 ` Niranjana Vishwanathapura
2026-01-14 6:33 ` Dandamudi, Priyanka
2026-01-14 6:28 ` Dandamudi, Priyanka
2025-12-19 12:01 ` [PATCH i-g-t 7/7] tests/intel/xe_exec_threads: Extend multi queue testing priyanka.dandamudi
2025-12-31 21:34 ` Niranjana Vishwanathapura [this message]
2026-01-14 6:36 ` Dandamudi, Priyanka
2025-12-22 21:58 ` ✓ Xe.CI.BAT: success for Extend multi queue feature validation support (rev2) Patchwork
2025-12-22 22:11 ` ✓ i915.CI.BAT: " Patchwork
2025-12-23 4:36 ` ✗ Xe.CI.Full: failure " Patchwork
2025-12-24 6:06 ` ✗ i915.CI.Full: " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aVWXAMbNVuCdo__V@nvishwa1-desk \
--to=niranjana.vishwanathapura@intel.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=priyanka.dandamudi@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox