diff options
author | Tvrtko Ursulin <tvrtko.ursulin@intel.com> | 2016-12-14 15:47:36 +0000 |
---|---|---|
committer | Tvrtko Ursulin <tvrtko.ursulin@intel.com> | 2017-01-30 15:57:16 +0000 |
commit | 385a9361bdabe2c32fdc9b06aacf063c7fd2b9bb (patch) | |
tree | 671a9860f8b732ca3d567e7fef5c8dcc3589d143 | |
parent | 92b5ed31ce763f90dfdf6bf26d02642ea573799f (diff) |
gem_ctx_params: Test the new context concurrency parameter
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
-rw-r--r-- | lib/ioctl_wrappers.h | 1 | ||||
-rw-r--r-- | tests/gem_ctx_param.c | 24 |
2 files changed, 24 insertions, 1 deletions
diff --git a/lib/ioctl_wrappers.h b/lib/ioctl_wrappers.h index 5f3bbd14..c434c0c2 100644 --- a/lib/ioctl_wrappers.h +++ b/lib/ioctl_wrappers.h @@ -121,6 +121,7 @@ struct local_i915_gem_context_param { #define LOCAL_CONTEXT_PARAM_GTT_SIZE 0x3 #define LOCAL_CONTEXT_PARAM_NO_ERROR_CAPTURE 0x4 #define LOCAL_CONTEXT_PARAM_BANNABLE 0x5 +#define LOCAL_CONTEXT_PARAM_CONCURRENCY 0x6 uint64_t value; }; void gem_context_require_bannable(int fd); diff --git a/tests/gem_ctx_param.c b/tests/gem_ctx_param.c index efdaf191..8cf3d192 100644 --- a/tests/gem_ctx_param.c +++ b/tests/gem_ctx_param.c @@ -136,11 +136,33 @@ igt_main gem_context_set_param(fd, &arg); } + arg.param = LOCAL_CONTEXT_PARAM_CONCURRENCY; + + igt_subtest("concurrency-get") { + arg.context = ctx; + gem_context_get_param(fd, &arg); + } + + igt_subtest("concurrency-set") { + arg.context = ctx; + arg.value = 1 << (I915_EXEC_BSD - 1); + gem_context_set_param(fd, &arg); + arg.value = 0; + gem_context_get_param(fd, &arg); + igt_assert(arg.value == (1 << (I915_EXEC_BSD - 1))); + } + + igt_subtest("concurrency-invalid") { + arg.context = ctx; + arg.value = 100; + igt_assert_eq(__gem_context_set_param(fd, &arg), -EINVAL); + } + /* NOTE: This testcase intentionally tests for the next free parameter * to catch ABI extensions. Don't "fix" this testcase without adding all * the tests for the new param first. */ - arg.param = LOCAL_CONTEXT_PARAM_BANNABLE + 1; + arg.param = LOCAL_CONTEXT_PARAM_CONCURRENCY + 1; igt_subtest("invalid-param-get") { arg.context = ctx; |