[Intel-gfx] [PATCH i-g-t] tests/gem_eio: Fix usage of gem_quiescent_gpu
Chris Wilson
chris at chris-wilson.co.uk
Thu Dec 14 22:45:12 UTC 2017
Quoting Antonio Argenziano (2017-12-14 22:01:31)
> After change "lib: Ask the kernel to quiesce the GPU" was merged,
> gem_quiescent_gpu() would not submit noop batches to all engines
> therefore the test should submit the workload and use the library
> function to wait for the workload to complete.
>
> Cc: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Mika Kuoppala <mika.kuoppala at linux.intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
> Signed-off-by: Antonio Argenziano <antonio.argenziano at intel.com>
> ---
> tests/gem_eio.c | 30 +++++++++++++++++++++++++++++-
> 1 file changed, 29 insertions(+), 1 deletion(-)
>
> diff --git a/tests/gem_eio.c b/tests/gem_eio.c
> index 2ac9f0a9..868f2236 100644
> --- a/tests/gem_eio.c
> +++ b/tests/gem_eio.c
> @@ -60,13 +60,41 @@ static bool i915_reset_control(bool enable)
> return ret;
> }
>
> +static void noop(int fd, unsigned flags)
> +{
> + const uint32_t bbe = MI_BATCH_BUFFER_END;
> + struct drm_i915_gem_execbuffer2 eb;
> + struct drm_i915_gem_exec_object2 exec;
> +
> + memset(&exec, 0, sizeof(exec));
> + exec.handle = gem_create(fd, 4096);
> + igt_assert((int)exec.handle > 0);
gem_create() provides the checks.
exec.handle is u32, with 0 being the only special invalid value. It just
happens that in the linux implementation it is limited internally by the
idr (but that limit may well be removed). Other implementations may use
a psuedo-random handle generator.
-Chris
More information about the Intel-gfx
mailing list