diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2014-05-08 10:04:35 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2014-05-08 10:05:37 +0100 |
commit | e46ff3f8c25957d641420fef4d680d48ce0a365f (patch) | |
tree | d66c4794b141b2c4e96e824d9b1984713c9adb9b /tests/gem_lut_handle.c | |
parent | 8741c2289f17e9bcb740a01cad4764a71c918eea (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.c | 17 |
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 { |