diff options
| author | Zhipeng Gong <zhipeng.gong@intel.com> | 2015-01-13 08:50:20 +0800 |
|---|---|---|
| committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2015-01-22 09:27:52 +0100 |
| commit | f8d47cb70dae434571c6fe5ae39a0fc4909ba7fa (patch) | |
| tree | 06b364d6f7a07563a31f7a8dfebe021300a2d2b4 /tests | |
| parent | 17937a0114b29a273152c4c2df72c5b1a992b07c (diff) | |
tests/gem_exec_params: check the invalid flags for dual bsd ring
v2: add more tests to address Daniel's comments(Zhipeng)
Signed-off-by: Zhipeng Gong <zhipeng.gong@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/gem_exec_params.c | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/gem_exec_params.c b/tests/gem_exec_params.c index f63eda91..54f0dc33 100644 --- a/tests/gem_exec_params.c +++ b/tests/gem_exec_params.c @@ -45,6 +45,9 @@ #include "igt_aux.h" #define LOCAL_I915_EXEC_VEBOX (4<<0) +#define LOCAL_I915_EXEC_BSD_MASK (3<<13) +#define LOCAL_I915_EXEC_BSD_RING1 (1<<13) +#define LOCAL_I915_EXEC_BSD_RING2 (2<<13) struct drm_i915_gem_execbuffer2 execbuf; struct drm_i915_gem_exec_object2 gem_exec[1]; @@ -126,6 +129,44 @@ igt_main RUN_FAIL(EINVAL); } + igt_subtest("invalid-bsd-ring") { + igt_require(gem_has_bsd2(fd)); + execbuf.flags = I915_EXEC_BSD | LOCAL_I915_EXEC_BSD_MASK; + RUN_FAIL(EINVAL); + } + + igt_subtest("invalid-bsd1-flag-on-render") { + execbuf.flags = I915_EXEC_RENDER | LOCAL_I915_EXEC_BSD_RING1; + RUN_FAIL(EINVAL); + } + + igt_subtest("invalid-bsd2-flag-on-render") { + execbuf.flags = I915_EXEC_RENDER | LOCAL_I915_EXEC_BSD_RING2; + RUN_FAIL(EINVAL); + } + + igt_subtest("invalid-bsd1-flag-on-blt") { + execbuf.flags = I915_EXEC_BLT | LOCAL_I915_EXEC_BSD_RING1; + RUN_FAIL(EINVAL); + } + + igt_subtest("invalid-bsd2-flag-on-blt") { + execbuf.flags = I915_EXEC_BLT | LOCAL_I915_EXEC_BSD_RING2; + RUN_FAIL(EINVAL); + } + + igt_subtest("invalid-bsd1-flag-on-vebox") { + igt_require(gem_has_vebox(fd)); + execbuf.flags = LOCAL_I915_EXEC_VEBOX | LOCAL_I915_EXEC_BSD_RING1; + RUN_FAIL(EINVAL); + } + + igt_subtest("invalid-bsd2-flag-on-vebox") { + igt_require(gem_has_vebox(fd)); + execbuf.flags = LOCAL_I915_EXEC_VEBOX | LOCAL_I915_EXEC_BSD_RING2; + RUN_FAIL(EINVAL); + } + igt_subtest("rel-constants-invalid-ring") { igt_require(gem_has_bsd(fd)); execbuf.flags = I915_EXEC_BSD | I915_EXEC_CONSTANTS_ABSOLUTE; |
