summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/igt_dummyload.c40
-rw-r--r--lib/igt_dummyload.h3
-rw-r--r--tests/gem_spin_batch.c2
3 files changed, 26 insertions, 19 deletions
diff --git a/lib/igt_dummyload.c b/lib/igt_dummyload.c
index a95b2462..00c6a030 100644
--- a/lib/igt_dummyload.c
+++ b/lib/igt_dummyload.c
@@ -61,7 +61,7 @@ fill_reloc(struct drm_i915_gem_relocation_entry *reloc,
}
static void emit_recursive_batch(igt_spin_t *spin,
- int fd, int engine, unsigned int dep_handle)
+ int fd, int engine, unsigned int dep)
{
#define SCRATCH 0
#define BATCH 1
@@ -99,11 +99,11 @@ static void emit_recursive_batch(igt_spin_t *spin,
I915_GEM_DOMAIN_GTT, I915_GEM_DOMAIN_GTT);
execbuf.buffer_count++;
- if (dep_handle > 0) {
+ if (dep) {
/* dummy write to dependency */
- obj[SCRATCH].handle = dep_handle;
+ obj[SCRATCH].handle = dep;
fill_reloc(&relocs[obj[BATCH].relocation_count++],
- dep_handle, 256,
+ dep, 256,
I915_GEM_DOMAIN_RENDER,
I915_GEM_DOMAIN_RENDER);
execbuf.buffer_count++;
@@ -143,12 +143,28 @@ static void emit_recursive_batch(igt_spin_t *spin,
}
}
+igt_spin_t *
+__igt_spin_batch_new(int fd, int engine, unsigned int dep)
+{
+ igt_spin_t *spin;
+
+ spin = calloc(1, sizeof(struct igt_spin));
+ igt_assert(spin);
+
+ emit_recursive_batch(spin, fd, engine, dep);
+ igt_assert(gem_bo_busy(fd, spin->handle));
+
+ igt_list_add(&spin->link, &spin_list);
+
+ return spin;
+}
+
/**
* igt_spin_batch_new:
* @fd: open i915 drm file descriptor
* @engine: Ring to execute batch OR'd with execbuf flags. If value is less
* than 0, execute on all available rings.
- * @dep_handle: handle to a buffer object dependency. If greater than 0, add a
+ * @dep: handle to a buffer object dependency. If greater than 0, add a
* relocation entry to this buffer within the batch.
*
* Start a recursive batch on a ring. Immediately returns a #igt_spin_t that
@@ -159,21 +175,11 @@ static void emit_recursive_batch(igt_spin_t *spin,
* Structure with helper internal state for igt_spin_batch_free().
*/
igt_spin_t *
-igt_spin_batch_new(int fd, int engine, unsigned int dep_handle)
+igt_spin_batch_new(int fd, int engine, unsigned int dep)
{
- igt_spin_t *spin;
-
igt_require_gem(fd);
- spin = calloc(1, sizeof(struct igt_spin));
- igt_assert(spin);
-
- emit_recursive_batch(spin, fd, engine, dep_handle);
- igt_assert(gem_bo_busy(fd, spin->handle));
-
- igt_list_add(&spin->link, &spin_list);
-
- return spin;
+ return __igt_spin_batch_new(fd, engine, dep);
}
static void notify(union sigval arg)
diff --git a/lib/igt_dummyload.h b/lib/igt_dummyload.h
index 41125e3f..340cada0 100644
--- a/lib/igt_dummyload.h
+++ b/lib/igt_dummyload.h
@@ -37,7 +37,8 @@ typedef struct igt_spin {
uint32_t *batch;
} igt_spin_t;
-igt_spin_t *igt_spin_batch_new(int fd, int engine, unsigned int dep_handle);
+igt_spin_t *__igt_spin_batch_new(int fd, int engine, unsigned int dep);
+igt_spin_t *igt_spin_batch_new(int fd, int engine, unsigned int dep);
void igt_spin_batch_set_timeout(igt_spin_t *spin, int64_t ns);
void igt_spin_batch_end(igt_spin_t *spin);
void igt_spin_batch_free(int fd, igt_spin_t *spin);
diff --git a/tests/gem_spin_batch.c b/tests/gem_spin_batch.c
index 3f97074c..bb63fb38 100644
--- a/tests/gem_spin_batch.c
+++ b/tests/gem_spin_batch.c
@@ -43,7 +43,7 @@ static void spin(int fd, unsigned int engine, unsigned int timeout_sec)
spin = igt_spin_batch_new(fd, engine, 0);
while ((elapsed = igt_nsec_elapsed(&tv)) >> 30 < timeout_sec) {
- igt_spin_t *next = igt_spin_batch_new(fd, engine, 0);
+ igt_spin_t *next = __igt_spin_batch_new(fd, engine, 0);
igt_spin_batch_set_timeout(spin,
timeout_100ms - igt_nsec_elapsed(&itv));