diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2019-04-16 09:42:52 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2019-04-17 09:03:12 +0100 |
commit | 81f4dd04f0109bed01b12133325b1c8d007e38b2 (patch) | |
tree | d86209d02910849d03a21fee88b1a5b269bf5545 | |
parent | 77f5e8465110cb67d2d8272123907ea1c4725631 (diff) |
i915/gem_exec_schedule: Fill in obj.offset for spinner resubmission
When resubmitting the spinner, fill in the expected offset so that we
are not tempted to relocate it across contexts (as the spinner must
point back to itself for the MI_BB_START to work). In this case, these
should work correctly as they are reusing the same active vma, but for
pedagogy we should dtrt.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
-rw-r--r-- | tests/i915/gem_exec_schedule.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/tests/i915/gem_exec_schedule.c b/tests/i915/gem_exec_schedule.c index 29653ae2..6f3f52d2 100644 --- a/tests/i915/gem_exec_schedule.c +++ b/tests/i915/gem_exec_schedule.c @@ -223,12 +223,9 @@ static void independent(int fd, unsigned int engine) if (spin == NULL) { spin = __igt_spin_batch_new(fd, .engine = other); } else { - struct drm_i915_gem_exec_object2 obj = { - .handle = spin->handle, - }; struct drm_i915_gem_execbuffer2 eb = { .buffer_count = 1, - .buffers_ptr = to_user_pointer(&obj), + .buffers_ptr = to_user_pointer(&spin->obj[1]), .flags = other, }; gem_execbuf(fd, &eb); @@ -621,12 +618,9 @@ static igt_spin_t *__noise(int fd, uint32_t ctx, int prio, igt_spin_t *spin) .ctx = ctx, .engine = other); } else { - struct drm_i915_gem_exec_object2 obj = { - .handle = spin->handle, - }; struct drm_i915_gem_execbuffer2 eb = { .buffer_count = 1, - .buffers_ptr = to_user_pointer(&obj), + .buffers_ptr = to_user_pointer(&spin->obj[1]), .rsvd1 = ctx, .flags = other, }; |