diff options
-rw-r--r-- | lib/igt_dummyload.c | 5 | ||||
-rw-r--r-- | lib/igt_dummyload.h | 7 |
2 files changed, 6 insertions, 6 deletions
diff --git a/lib/igt_dummyload.c b/lib/igt_dummyload.c index 7beb6624..2027a4b7 100644 --- a/lib/igt_dummyload.c +++ b/lib/igt_dummyload.c @@ -186,7 +186,8 @@ emit_recursive_batch(igt_spin_t *spin, spin->handle = obj[BATCH].handle; /* Allow ourselves to be preempted */ - *batch++ = MI_ARB_CHK; + if (!(opts->flags & IGT_SPIN_NO_PREEMPTION)) + *batch++ = MI_ARB_CHK; /* Pad with a few nops so that we do not completely hog the system. * @@ -379,8 +380,6 @@ void igt_spin_batch_end(igt_spin_t *spin) if (!spin) return; - igt_assert(*spin->batch == MI_ARB_CHK || - *spin->batch == MI_BATCH_BUFFER_END); *spin->batch = MI_BATCH_BUFFER_END; __sync_synchronize(); } diff --git a/lib/igt_dummyload.h b/lib/igt_dummyload.h index e80a1245..38bc7682 100644 --- a/lib/igt_dummyload.h +++ b/lib/igt_dummyload.h @@ -50,9 +50,10 @@ struct igt_spin_factory { unsigned int flags; }; -#define IGT_SPIN_FENCE_OUT (1 << 0) -#define IGT_SPIN_POLL_RUN (1 << 1) -#define IGT_SPIN_FAST (1 << 2) +#define IGT_SPIN_FENCE_OUT (1 << 0) +#define IGT_SPIN_POLL_RUN (1 << 1) +#define IGT_SPIN_FAST (1 << 2) +#define IGT_SPIN_NO_PREEMPTION (1 << 3) igt_spin_t * __igt_spin_batch_factory(int fd, const struct igt_spin_factory *opts); |