summaryrefslogtreecommitdiff
path: root/tests/gem_lut_handle.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2014-05-08 10:04:35 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2014-05-08 10:05:37 +0100
commite46ff3f8c25957d641420fef4d680d48ce0a365f (patch)
treed66c4794b141b2c4e96e824d9b1984713c9adb9b /tests/gem_lut_handle.c
parent8741c2289f17e9bcb740a01cad4764a71c918eea (diff)
igt/gem_lut_handle: Fix errno checking
Regression from commit c1404e05b7477122b9923ba029593c2cb64671a7 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Tue Apr 29 07:14:33 2014 +0100 errno is reset after each syscall Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'tests/gem_lut_handle.c')
-rw-r--r--tests/gem_lut_handle.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/tests/gem_lut_handle.c b/tests/gem_lut_handle.c
index 705e8b33..14e39778 100644
--- a/tests/gem_lut_handle.c
+++ b/tests/gem_lut_handle.c
@@ -82,9 +82,12 @@ static int exec(int fd, uint32_t handle, unsigned int flags)
i915_execbuffer2_set_context_id(execbuf, 0);
execbuf.rsvd2 = 0;
- return drmIoctl(fd,
- DRM_IOCTL_I915_GEM_EXECBUFFER2,
- &execbuf);
+ if (drmIoctl(fd,
+ DRM_IOCTL_I915_GEM_EXECBUFFER2,
+ &execbuf))
+ return -errno;
+
+ return 0;
}
static int many_exec(int fd, uint32_t batch, int num_exec, int num_reloc, unsigned flags)
@@ -167,15 +170,15 @@ static int many_exec(int fd, uint32_t batch, int num_exec, int num_reloc, unsign
}
#define _fail(x) ((x) == -ENOENT)
-#define ASSERT(x) do { \
+#define ASSERT(x, y) do { \
if (!(x)) { \
fprintf(stderr, "%s:%d failed, errno=%d\n", \
- __FUNCTION__, __LINE__, errno); \
+ __FUNCTION__, __LINE__, -y); \
abort(); \
} \
} while (0)
-#define fail(x) ASSERT(_fail(x))
-#define pass(x) ASSERT(!_fail(x))
+#define fail(x) ASSERT(_fail(x), x)
+#define pass(x) ASSERT(!_fail(x), x)
igt_simple_main
{