summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/gem_linear_blits.c11
-rw-r--r--tests/gem_tiled_blits.c14
2 files changed, 15 insertions, 10 deletions
diff --git a/tests/gem_linear_blits.c b/tests/gem_linear_blits.c
index 8297416c..6afa4e9c 100644
--- a/tests/gem_linear_blits.c
+++ b/tests/gem_linear_blits.c
@@ -141,16 +141,19 @@ create_bo(int fd, uint32_t val)
static void
check_bo(int fd, uint32_t handle, uint32_t val)
{
+ int num_errors;
int i;
gem_read(fd, handle, 0, linear, sizeof(linear));
+
+ num_errors = 0;
for (i = 0; i < WIDTH*HEIGHT; i++) {
- igt_assert_f(linear[i] == val,
- "Expected 0x%08x, found 0x%08x "
- "at offset 0x%08x\n",
- val, linear[i], i * 4);
+ if (linear[i] != val && num_errors++ < 32)
+ igt_warn("[%08x] Expected 0x%08x, found 0x%08x (difference 0x%08x)\n",
+ i * 4, val, linear[i], val ^ linear[i]);
val++;
}
+ igt_assert_eq(num_errors, 0);
}
static void run_test(int fd, int count)
diff --git a/tests/gem_tiled_blits.c b/tests/gem_tiled_blits.c
index a81226a1..51c1b584 100644
--- a/tests/gem_tiled_blits.c
+++ b/tests/gem_tiled_blits.c
@@ -90,10 +90,11 @@ create_bo(uint32_t start_val)
}
static void
-check_bo(drm_intel_bo *bo, uint32_t start_val)
+check_bo(drm_intel_bo *bo, uint32_t val)
{
drm_intel_bo *linear_bo;
uint32_t *linear;
+ int num_errors;
int i;
linear_bo = drm_intel_bo_alloc(bufmgr, "linear dst", 1024 * 1024, 4096);
@@ -103,13 +104,14 @@ check_bo(drm_intel_bo *bo, uint32_t start_val)
do_or_die(drm_intel_bo_map(linear_bo, 0));
linear = linear_bo->virtual;
+ num_errors = 0;
for (i = 0; i < 1024 * 1024 / 4; i++) {
- igt_assert_f(linear[i] == start_val,
- "Expected 0x%08x, found 0x%08x "
- "at offset 0x%08x\n",
- start_val, linear[i], i * 4);
- start_val++;
+ if (linear[i] != val && num_errors++ < 32)
+ igt_warn("[%08x] Expected 0x%08x, found 0x%08x (difference 0x%08x)\n",
+ i * 4, val, linear[i], val ^ linear[i]);
+ val++;
}
+ igt_assert_eq(num_errors, 0);
drm_intel_bo_unmap(linear_bo);
drm_intel_bo_unreference(linear_bo);