mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-07-23 18:06:18 +00:00
tests/gem_exec_params: check invalid flags for Resource Streamer
Make sure resource streamer flags works only in correct ring in addition to checking next flag after the RS boundary fails. v2: Make sure we reject RS on pre-hsw. v3: Don't skip 1<<15 for the exec flags (Jani Nikula) Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Abdiel Janulgue <abdiel.janulgue@linux.intel.com> Signed-off-by: Thomas Wood <thomas.wood@intel.com>
This commit is contained in:
parent
ec9e5996d1
commit
8ad1e40778
@ -48,6 +48,7 @@
|
|||||||
#define LOCAL_I915_EXEC_BSD_MASK (3<<13)
|
#define LOCAL_I915_EXEC_BSD_MASK (3<<13)
|
||||||
#define LOCAL_I915_EXEC_BSD_RING1 (1<<13)
|
#define LOCAL_I915_EXEC_BSD_RING1 (1<<13)
|
||||||
#define LOCAL_I915_EXEC_BSD_RING2 (2<<13)
|
#define LOCAL_I915_EXEC_BSD_RING2 (2<<13)
|
||||||
|
#define LOCAL_I915_EXEC_RESOURCE_STREAMER (1<<15)
|
||||||
|
|
||||||
struct drm_i915_gem_execbuffer2 execbuf;
|
struct drm_i915_gem_execbuffer2 execbuf;
|
||||||
struct drm_i915_gem_exec_object2 gem_exec[1];
|
struct drm_i915_gem_exec_object2 gem_exec[1];
|
||||||
@ -220,7 +221,7 @@ igt_main
|
|||||||
/* HANDLE_LUT and NO_RELOC are already exercised by gem_exec_lut_handle */
|
/* HANDLE_LUT and NO_RELOC are already exercised by gem_exec_lut_handle */
|
||||||
|
|
||||||
igt_subtest("invalid-flag") {
|
igt_subtest("invalid-flag") {
|
||||||
execbuf.flags = I915_EXEC_RENDER | (I915_EXEC_HANDLE_LUT << 1);
|
execbuf.flags = I915_EXEC_RENDER | (LOCAL_I915_EXEC_RESOURCE_STREAMER << 1);
|
||||||
RUN_FAIL(EINVAL);
|
RUN_FAIL(EINVAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -234,6 +235,30 @@ igt_main
|
|||||||
execbuf.num_cliprects = 0;
|
execbuf.num_cliprects = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
igt_subtest("rs-invalid-on-bsd-ring") {
|
||||||
|
igt_require(IS_HASWELL(devid) || intel_gen(devid) >= 8);
|
||||||
|
execbuf.flags = I915_EXEC_BSD | LOCAL_I915_EXEC_RESOURCE_STREAMER;
|
||||||
|
RUN_FAIL(EINVAL);
|
||||||
|
}
|
||||||
|
|
||||||
|
igt_subtest("rs-invalid-on-blt-ring") {
|
||||||
|
igt_require(IS_HASWELL(devid) || intel_gen(devid) >= 8);
|
||||||
|
execbuf.flags = I915_EXEC_BLT | LOCAL_I915_EXEC_RESOURCE_STREAMER;
|
||||||
|
RUN_FAIL(EINVAL);
|
||||||
|
}
|
||||||
|
|
||||||
|
igt_subtest("rs-invalid-on-vebox-ring") {
|
||||||
|
igt_require(IS_HASWELL(devid) || intel_gen(devid) >= 8);
|
||||||
|
execbuf.flags = I915_EXEC_VEBOX | LOCAL_I915_EXEC_RESOURCE_STREAMER;
|
||||||
|
RUN_FAIL(EINVAL);
|
||||||
|
}
|
||||||
|
|
||||||
|
igt_subtest("rs-invalid-gen") {
|
||||||
|
igt_require(!IS_HASWELL(devid) && intel_gen(devid) < 8);
|
||||||
|
execbuf.flags = I915_EXEC_RENDER | LOCAL_I915_EXEC_RESOURCE_STREAMER;
|
||||||
|
RUN_FAIL(EINVAL);
|
||||||
|
}
|
||||||
|
|
||||||
#define DIRT(name) \
|
#define DIRT(name) \
|
||||||
igt_subtest(#name "-dirt") { \
|
igt_subtest(#name "-dirt") { \
|
||||||
execbuf.flags = 0; \
|
execbuf.flags = 0; \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user