summaryrefslogtreecommitdiff
path: root/tests/i915
diff options
context:
space:
mode:
authorKarolina Drobnik <karolina.drobnik@intel.com>2022-05-31 12:56:54 +0200
committerPetri Latvala <petri.latvala@intel.com>2022-06-01 12:02:06 +0300
commite4dc500add255ce27c4050dcc2384da71e2482bf (patch)
treef9f1a31966b36e637e174fe1a10c7ef697ce2b16 /tests/i915
parent5857938d4d3539deb43ecb03604b7c664b75e57d (diff)
tests/i915: Use correct type for gen parameter
intel_gen is designed to return a big unsigned number for an unknown device. The value is interpreted to be the newest generation possible, and the matching configuration is used. Some functions incorrectly pass the gen value as a signed number, meaning it becomes negative, and the oldest configuration is used instead of the newest one. This leads to GPU hangs in some cases. Update the definition of submit functions in gem_exec_gttfill and gem_softpin, and has_cs_timestamp in gem_ctx_engines to use a correct type for gen parameter. Signed-off-by: Karolina Drobnik <karolina.drobnik@intel.com> Cc: Zbigniew KempczyƄski <zbigniew.kempczynski@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
Diffstat (limited to 'tests/i915')
-rw-r--r--tests/i915/gem_ctx_engines.c2
-rw-r--r--tests/i915/gem_exec_gttfill.c2
-rw-r--r--tests/i915/gem_softpin.c2
3 files changed, 3 insertions, 3 deletions
diff --git a/tests/i915/gem_ctx_engines.c b/tests/i915/gem_ctx_engines.c
index 19cf9b05..4b8e5145 100644
--- a/tests/i915/gem_ctx_engines.c
+++ b/tests/i915/gem_ctx_engines.c
@@ -437,7 +437,7 @@ static uint32_t read_result(int timeline, uint32_t *map, int idx)
return map[idx];
}
-static bool has_cs_timestamp(const struct intel_execution_engine2 *e, int gen)
+static bool has_cs_timestamp(const struct intel_execution_engine2 *e, unsigned int gen)
{
if (gen >= 7)
return true;
diff --git a/tests/i915/gem_exec_gttfill.c b/tests/i915/gem_exec_gttfill.c
index 80634304..f9f244d6 100644
--- a/tests/i915/gem_exec_gttfill.c
+++ b/tests/i915/gem_exec_gttfill.c
@@ -46,7 +46,7 @@ static void xchg_batch(void *array, unsigned int i, unsigned int j)
batches[j] = tmp;
}
-static void submit(int fd, uint64_t ahnd, int gen,
+static void submit(int fd, uint64_t ahnd, unsigned int gen,
struct drm_i915_gem_execbuffer2 *eb,
struct drm_i915_gem_relocation_entry *reloc,
struct batch *batches, unsigned int count)
diff --git a/tests/i915/gem_softpin.c b/tests/i915/gem_softpin.c
index 489d528f..b851c90e 100644
--- a/tests/i915/gem_softpin.c
+++ b/tests/i915/gem_softpin.c
@@ -898,7 +898,7 @@ static void xchg_batch(void *array, unsigned int i, unsigned int j)
batches[j] = tmp;
}
-static void submit(int fd, int gen,
+static void submit(int fd, unsigned int gen,
struct drm_i915_gem_execbuffer2 *eb,
struct batch *batches, unsigned int count,
uint64_t ahnd)