[Intel-gfx] [PATCH i-g-t 1/2] tests/gem_create: Explicitly check for -EINVAL on create-invalid-size
Chris Wilson
chris at chris-wilson.co.uk
Tue Oct 3 11:52:12 UTC 2017
Quoting Joonas Lahtinen (2017-10-03 12:47:33)
> Merge the remaining testing coverage delta from gem_bad_length and
> check that creating an object of zero size fails with -EINVAL.
>
> Suggested-by: Daniele Ceraolo Spurio <daniele.ceraolospurio at intel.com>
> Signed-off-by: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio at intel.com>
> Cc: Chris Wilson <chris at chris-wilson.co.uk>
> ---
> tests/gem_create.c | 14 +++++++++-----
> 1 file changed, 9 insertions(+), 5 deletions(-)
>
> diff --git a/tests/gem_create.c b/tests/gem_create.c
> index de7b8209..655f7a4e 100644
> --- a/tests/gem_create.c
> +++ b/tests/gem_create.c
> @@ -70,17 +70,18 @@ struct local_i915_gem_create_v2 {
> uint32_t pad;
> #define I915_CREATE_PLACEMENT_STOLEN (1<<0)
> uint32_t flags;
> -} create;
> +};
>
> #define LOCAL_IOCTL_I915_GEM_CREATE DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_GEM_CREATE, struct local_i915_gem_create_v2)
>
> static void invalid_flag_test(int fd)
> {
> + struct local_i915_gem_create_v2 create;
> int ret;
>
> gem_require_stolen_support(fd);
>
> - create.handle = 0;
> + CLEAR(create);
> create.size = PAGE_SIZE;
> create.flags = ~I915_CREATE_PLACEMENT_STOLEN;
> ret = drmIoctl(fd, LOCAL_IOCTL_I915_GEM_CREATE, &create);
> @@ -95,10 +96,13 @@ static void invalid_flag_test(int fd)
First chunk,
Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
Second chunk, I think we should fix __gem_create() to follow the
convention of returning the error code.
-Chris
> static void invalid_size_test(int fd)
> {
> - int handle;
> + struct i915_gem_create create;
> +
> + CLEAR(create);
> + create.size = 0;
> + igt_assert_eq(igt_ioctl(fd, IOCTL_I915_GEM_CREATE, &create), -1);
>
> - handle = __gem_create(fd, 0);
> - igt_assert(!handle);
> + igt_assert_eq(errno, EINVAL);
> }
>
> /*
> --
> 2.13.6
>
More information about the Intel-gfx
mailing list