* [igt-dev] [PATCH i-g-t 1/2] intel: Unify STORE_DWORD gen checks
@ 2023-01-27 19:22 Ville Syrjala
2023-01-27 19:22 ` [igt-dev] [PATCH i-g-t 2/2] Silence compiler warnings on 32bit Ville Syrjala
` (4 more replies)
0 siblings, 5 replies; 7+ messages in thread
From: Ville Syrjala @ 2023-01-27 19:22 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
A bunch of tests use a lax 'gen<6' check to determine if
MI_STORE_DWORD needs a secure batch or not, while other
places use the more accurate gen==4||5 check. And that
check is also written in two different styles in various
places. Unify all of it to use a common helper.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
lib/igt_dummyload.c | 2 +-
lib/igt_gt.c | 5 +++++
lib/igt_gt.h | 1 +
lib/igt_store.c | 2 +-
tests/i915/gem_ctx_shared.c | 4 ++--
tests/i915/gem_exec_async.c | 2 +-
tests/i915/gem_exec_capture.c | 4 ++--
tests/i915/gem_exec_fence.c | 4 ++--
tests/i915/gem_exec_flush.c | 4 ++--
tests/i915/gem_exec_gttfill.c | 2 +-
tests/i915/gem_exec_nop.c | 4 ++--
tests/i915/gem_exec_parallel.c | 2 +-
tests/i915/gem_exec_params.c | 2 +-
tests/i915/gem_exec_reloc.c | 7 +++++--
tests/i915/gem_exec_schedule.c | 4 ++--
tests/i915/gem_exec_store.c | 6 +++---
tests/i915/gem_exec_suspend.c | 2 +-
tests/i915/gem_exec_whisper.c | 2 +-
tests/i915/gem_ringfill.c | 2 +-
tests/i915/gem_softpin.c | 4 ++--
tests/i915/gem_sync.c | 8 ++++----
tests/i915/gem_userptr_blits.c | 4 ++--
tests/i915/i915_module_load.c | 2 +-
tests/prime_vgem.c | 2 +-
24 files changed, 45 insertions(+), 36 deletions(-)
diff --git a/lib/igt_dummyload.c b/lib/igt_dummyload.c
index 5f3c6b10c7d5..dbf164421954 100644
--- a/lib/igt_dummyload.c
+++ b/lib/igt_dummyload.c
@@ -217,7 +217,7 @@ emit_recursive_batch(igt_spin_t *spin,
} else if (opts->flags & IGT_SPIN_POLL_RUN) {
igt_assert(!opts->dependency);
- if (gen == 4 || gen == 5) {
+ if (gem_store_dword_needs_secure(gen)) {
execbuf->flags |= I915_EXEC_SECURE;
igt_require(__igt_device_set_master(fd) == 0);
}
diff --git a/lib/igt_gt.c b/lib/igt_gt.c
index d4a825e6642e..f91c956e53d9 100644
--- a/lib/igt_gt.c
+++ b/lib/igt_gt.c
@@ -611,6 +611,11 @@ bool gem_can_store_dword(int fd, unsigned int engine)
gem_execbuf_flags_to_engine_class(engine));
}
+bool gem_store_dword_needs_secure(int gen)
+{
+ return gen == 4 || gen == 5;
+}
+
const struct intel_execution_engine2 intel_execution_engines2[] = {
{ "rcs0", I915_ENGINE_CLASS_RENDER, 0, I915_EXEC_RENDER },
{ "bcs0", I915_ENGINE_CLASS_COPY, 0, I915_EXEC_BLT },
diff --git a/lib/igt_gt.h b/lib/igt_gt.h
index 3d10349e4621..3a60b3747ba5 100644
--- a/lib/igt_gt.h
+++ b/lib/igt_gt.h
@@ -73,6 +73,7 @@ unsigned intel_detect_and_clear_missed_interrupts(int fd);
bool gem_can_store_dword(int fd, unsigned int engine);
bool gem_class_can_store_dword(int fd, int class);
+bool gem_store_dword_needs_secure(int gen);
extern const struct intel_execution_engine2 {
char name[16];
diff --git a/lib/igt_store.c b/lib/igt_store.c
index 98c6c4fbd192..fd8dd1dd664b 100644
--- a/lib/igt_store.c
+++ b/lib/igt_store.c
@@ -48,7 +48,7 @@ void igt_store_word(int fd, uint64_t ahnd, const intel_ctx_t *ctx,
execbuf.flags |= I915_EXEC_FENCE_IN;
execbuf.rsvd2 = fence;
}
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
memset(obj, 0, sizeof(obj));
diff --git a/tests/i915/gem_ctx_shared.c b/tests/i915/gem_ctx_shared.c
index 18d8cc013d68..209377be1c84 100644
--- a/tests/i915/gem_ctx_shared.c
+++ b/tests/i915/gem_ctx_shared.c
@@ -327,7 +327,7 @@ static void exec_shared_gtt(int i915, const intel_ctx_cfg_t *cfg,
obj.handle = batch;
obj.offset += 8192; /* make sure we don't cause an eviction! */
execbuf.rsvd1 = ctx[1]->id;
- if (gen > 3 && gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
gem_execbuf(i915, &execbuf);
@@ -528,7 +528,7 @@ static void store_dword(int i915, uint64_t ahnd, const intel_ctx_t *ctx,
execbuf.buffers_ptr = to_user_pointer(obj + !cork);
execbuf.buffer_count = 2 + !!cork;
execbuf.flags = ring;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
diff --git a/tests/i915/gem_exec_async.c b/tests/i915/gem_exec_async.c
index d50fe45ec57c..0d4efd736d71 100644
--- a/tests/i915/gem_exec_async.c
+++ b/tests/i915/gem_exec_async.c
@@ -44,7 +44,7 @@ static void store_dword(int fd, int id, const intel_ctx_t *ctx,
execbuf.buffers_ptr = to_user_pointer(obj);
execbuf.buffer_count = 2;
execbuf.flags = ring;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
diff --git a/tests/i915/gem_exec_capture.c b/tests/i915/gem_exec_capture.c
index 2db58266fd4e..9ecf2b546da0 100644
--- a/tests/i915/gem_exec_capture.c
+++ b/tests/i915/gem_exec_capture.c
@@ -346,7 +346,7 @@ static void __capture1(int fd, int dir, uint64_t ahnd, const intel_ctx_t *ctx,
execbuf.buffers_ptr = (uintptr_t)obj;
execbuf.buffer_count = ARRAY_SIZE(obj);
execbuf.flags = e->flags;
- if (gen > 3 && gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.flags |= I915_EXEC_FENCE_OUT;
execbuf.rsvd1 = ctx->id;
@@ -536,7 +536,7 @@ __captureN(int fd, int dir, uint64_t ahnd, const intel_ctx_t *ctx,
execbuf.buffers_ptr = (uintptr_t)obj;
execbuf.buffer_count = count + 2;
execbuf.flags = e->flags;
- if (gen > 3 && gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.flags |= I915_EXEC_FENCE_OUT;
execbuf.rsvd1 = ctx->id;
diff --git a/tests/i915/gem_exec_fence.c b/tests/i915/gem_exec_fence.c
index 6bf1cdb57741..b713cb16d790 100644
--- a/tests/i915/gem_exec_fence.c
+++ b/tests/i915/gem_exec_fence.c
@@ -622,7 +622,7 @@ static void test_parallel(int i915, const intel_ctx_t *ctx,
batch[++i] = MI_BATCH_BUFFER_END;
gem_write(i915, obj[1].handle, 0, batch, sizeof(batch));
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
gem_execbuf(i915, &execbuf);
@@ -745,7 +745,7 @@ static void test_concurrent(int i915, const intel_ctx_t *ctx,
tmp_ctx = intel_ctx_create(i915, &ctx->cfg);
execbuf.rsvd1 = tmp_ctx->id;
execbuf.rsvd2 = spin->out_fence;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
gem_execbuf(i915, &execbuf);
diff --git a/tests/i915/gem_exec_flush.c b/tests/i915/gem_exec_flush.c
index 40c58db2bb7d..b41eafcd07c5 100644
--- a/tests/i915/gem_exec_flush.c
+++ b/tests/i915/gem_exec_flush.c
@@ -168,7 +168,7 @@ static void run(int fd, unsigned ring, int nchild, int timeout,
execbuf.buffers_ptr = to_user_pointer(obj);
execbuf.buffer_count = 3;
execbuf.flags = ring | (1 << 12);
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
obj[1].handle = gem_create(fd, 1024*64);
@@ -414,7 +414,7 @@ static void batch(int fd, unsigned ring, int nchild, int timeout,
execbuf.buffers_ptr = to_user_pointer(obj);
execbuf.buffer_count = 2;
execbuf.flags = ring | (1 << 12);
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
obj[1].handle = gem_create(fd, 64<<10);
diff --git a/tests/i915/gem_exec_gttfill.c b/tests/i915/gem_exec_gttfill.c
index 137277fe5313..d647f544e446 100644
--- a/tests/i915/gem_exec_gttfill.c
+++ b/tests/i915/gem_exec_gttfill.c
@@ -166,7 +166,7 @@ static void fillgtt(int fd, const intel_ctx_t *ctx, unsigned ring, int timeout)
memset(&execbuf, 0, sizeof(execbuf));
execbuf.buffer_count = 1;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
diff --git a/tests/i915/gem_exec_nop.c b/tests/i915/gem_exec_nop.c
index f35cc8401f91..f11a1dd92679 100644
--- a/tests/i915/gem_exec_nop.c
+++ b/tests/i915/gem_exec_nop.c
@@ -120,7 +120,7 @@ static void poll_ring(int fd, const intel_ctx_t *ctx,
uint64_t elapsed;
flags = I915_EXEC_NO_RELOC;
- if (gen == 4 || gen == 5)
+ if (gem_store_dword_needs_secure(gen))
flags |= I915_EXEC_SECURE;
igt_require(gem_class_can_store_dword(fd, e->class));
@@ -234,7 +234,7 @@ static void poll_sequential(int fd, const intel_ctx_t *ctx,
bool cached;
flags = I915_EXEC_NO_RELOC;
- if (gen == 4 || gen == 5)
+ if (gem_store_dword_needs_secure(gen))
flags |= I915_EXEC_SECURE;
nengine = 0;
diff --git a/tests/i915/gem_exec_parallel.c b/tests/i915/gem_exec_parallel.c
index 429620884b1f..7676244568a7 100644
--- a/tests/i915/gem_exec_parallel.c
+++ b/tests/i915/gem_exec_parallel.c
@@ -127,7 +127,7 @@ static void *thread(void *data)
execbuf.flags = t->engine;
execbuf.flags |= I915_EXEC_HANDLE_LUT;
execbuf.flags |= I915_EXEC_NO_RELOC;
- if (t->gen < 6)
+ if (t->gen == 4 || t->gen == 5)
execbuf.flags |= I915_EXEC_SECURE;
if (t->flags & (CONTEXTS | FDS)) {
tmp_ctx = intel_ctx_create(fd, &t->ctx->cfg);
diff --git a/tests/i915/gem_exec_params.c b/tests/i915/gem_exec_params.c
index 618635ec38fb..909c6b7daf44 100644
--- a/tests/i915/gem_exec_params.c
+++ b/tests/i915/gem_exec_params.c
@@ -171,7 +171,7 @@ static void test_batch_first(int fd)
memset(&execbuf, 0, sizeof(execbuf));
execbuf.buffers_ptr = to_user_pointer(obj);
execbuf.buffer_count = ARRAY_SIZE(obj);
- if (gen > 3 && gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
/* Normal mode */
diff --git a/tests/i915/gem_exec_reloc.c b/tests/i915/gem_exec_reloc.c
index 7a354a32a1a0..eefc10f1f136 100644
--- a/tests/i915/gem_exec_reloc.c
+++ b/tests/i915/gem_exec_reloc.c
@@ -307,7 +307,7 @@ static void active(int fd, const intel_ctx_t *ctx, unsigned engine)
memset(&execbuf, 0, sizeof(execbuf));
execbuf.buffers_ptr = to_user_pointer(obj);
execbuf.buffer_count = 2;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
@@ -732,7 +732,7 @@ static void concurrent_child(int i915, const intel_ctx_t *ctx,
struct drm_i915_gem_execbuffer2 execbuf = {
.buffers_ptr = to_user_pointer(obj),
.buffer_count = ARRAY_SIZE(obj),
- .flags = e->flags | I915_EXEC_HANDLE_LUT | (gen < 6 ? I915_EXEC_SECURE : 0),
+ .flags = e->flags | I915_EXEC_HANDLE_LUT,
.rsvd1 = ctx->id,
};
uint32_t *batch = &obj[num_common + 1].handle;
@@ -740,6 +740,9 @@ static void concurrent_child(int i915, const intel_ctx_t *ctx,
uint32_t *x;
int err = 0;
+ if (gem_store_dword_needs_secure(gen))
+ execbuf.flags |= I915_EXEC_SECURE;
+
memset(obj, 0, sizeof(obj));
obj[0].handle = gem_create(i915, 64 * CONCURRENT * 4);
diff --git a/tests/i915/gem_exec_schedule.c b/tests/i915/gem_exec_schedule.c
index 58b118c79ea1..2fdc1ea0e786 100644
--- a/tests/i915/gem_exec_schedule.c
+++ b/tests/i915/gem_exec_schedule.c
@@ -108,7 +108,7 @@ static uint32_t __store_dword(int fd, uint64_t ahnd, const intel_ctx_t *ctx,
execbuf.buffers_ptr = to_user_pointer(obj + !cork);
execbuf.buffer_count = 2 + !!cork;
execbuf.flags = ring;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
@@ -2257,7 +2257,7 @@ static void reorder_wide(int fd, const intel_ctx_cfg_t *cfg, unsigned ring)
execbuf.buffers_ptr = to_user_pointer(obj);
execbuf.buffer_count = ARRAY_SIZE(obj);
execbuf.flags = ring;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.flags |= I915_EXEC_FENCE_IN;
diff --git a/tests/i915/gem_exec_store.c b/tests/i915/gem_exec_store.c
index efb9907ebb2a..ec4f0bc9338e 100644
--- a/tests/i915/gem_exec_store.c
+++ b/tests/i915/gem_exec_store.c
@@ -58,7 +58,7 @@ static void store_dword(int fd, const intel_ctx_t *ctx,
execbuf.buffers_ptr = to_user_pointer(obj);
execbuf.buffer_count = 2;
execbuf.flags = e->flags;
- if (gen > 3 && gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
@@ -143,7 +143,7 @@ static void store_cachelines(int fd, const intel_ctx_t *ctx,
memset(&execbuf, 0, sizeof(execbuf));
execbuf.buffer_count = flags & PAGES ? NCACHELINES + 1 : 2;
execbuf.flags = e->flags;
- if (gen > 3 && gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
@@ -255,7 +255,7 @@ static void store_all(int fd, const intel_ctx_t *ctx)
memset(&execbuf, 0, sizeof(execbuf));
execbuf.buffers_ptr = to_user_pointer(obj);
execbuf.buffer_count = 2;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
diff --git a/tests/i915/gem_exec_suspend.c b/tests/i915/gem_exec_suspend.c
index 3b59966a11d1..e14df2ad1509 100644
--- a/tests/i915/gem_exec_suspend.c
+++ b/tests/i915/gem_exec_suspend.c
@@ -110,7 +110,7 @@ static void run_test(int fd, const intel_ctx_t *ctx,
execbuf.buffers_ptr = to_user_pointer(obj);
execbuf.buffer_count = 2;
execbuf.flags = 1 << 11;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
diff --git a/tests/i915/gem_exec_whisper.c b/tests/i915/gem_exec_whisper.c
index 616231aa9667..5a1a4fa9a074 100644
--- a/tests/i915/gem_exec_whisper.c
+++ b/tests/i915/gem_exec_whisper.c
@@ -297,7 +297,7 @@ static void whisper(int fd, const intel_ctx_t *ctx,
execbuf.buffer_count = 2;
execbuf.flags = I915_EXEC_HANDLE_LUT;
execbuf.flags |= I915_EXEC_NO_RELOC;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
diff --git a/tests/i915/gem_ringfill.c b/tests/i915/gem_ringfill.c
index 8ab00525ff28..50d0c6179db1 100644
--- a/tests/i915/gem_ringfill.c
+++ b/tests/i915/gem_ringfill.c
@@ -116,7 +116,7 @@ static void setup_execbuf(int fd, const intel_ctx_t *ctx,
execbuf->buffers_ptr = to_user_pointer(obj);
execbuf->flags = ring | I915_EXEC_NO_RELOC | I915_EXEC_HANDLE_LUT;
- if (gen > 3 && gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf->flags |= I915_EXEC_SECURE;
execbuf->rsvd1 = ctx->id;
diff --git a/tests/i915/gem_softpin.c b/tests/i915/gem_softpin.c
index ad6d3f531c5f..f90526bffc92 100644
--- a/tests/i915/gem_softpin.c
+++ b/tests/i915/gem_softpin.c
@@ -631,7 +631,7 @@ static void test_noreloc(int fd, enum sleep sleep, unsigned flags)
memset(&execbuf, 0, sizeof(execbuf));
execbuf.buffers_ptr = to_user_pointer(object);
execbuf.buffer_count = 1;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
gem_execbuf(fd, &execbuf);
gem_close(fd, object[0].handle);
@@ -1004,7 +1004,7 @@ static void test_allocator_evict(int fd, const intel_ctx_t *ctx,
memset(&execbuf, 0, sizeof(execbuf));
execbuf.buffer_count = 1;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
diff --git a/tests/i915/gem_sync.c b/tests/i915/gem_sync.c
index 07cabf7abcd0..e04038c55c53 100644
--- a/tests/i915/gem_sync.c
+++ b/tests/i915/gem_sync.c
@@ -554,7 +554,7 @@ store_ring(int fd, const intel_ctx_t *ctx, unsigned ring,
execbuf.flags = ied_flags(&ied, child);
execbuf.flags |= I915_EXEC_NO_RELOC;
execbuf.flags |= I915_EXEC_HANDLE_LUT;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
@@ -663,7 +663,7 @@ switch_ring(int fd, const intel_ctx_t *ctx, unsigned ring,
c->execbuf.flags = ied_flags(&ied, child);
c->execbuf.flags |= I915_EXEC_NO_RELOC;
c->execbuf.flags |= I915_EXEC_HANDLE_LUT;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
c->execbuf.flags |= I915_EXEC_SECURE;
c->ctx = intel_ctx_create(fd, &ctx->cfg);
@@ -831,7 +831,7 @@ __store_many(int fd, const intel_ctx_t *ctx, unsigned ring,
execbuf.flags = ring;
execbuf.flags |= I915_EXEC_NO_RELOC;
execbuf.flags |= I915_EXEC_HANDLE_LUT;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
@@ -1046,7 +1046,7 @@ store_all(int fd, const intel_ctx_t *ctx, int num_children, int timeout)
execbuf.buffers_ptr = to_user_pointer(object);
execbuf.flags |= I915_EXEC_NO_RELOC;
execbuf.flags |= I915_EXEC_HANDLE_LUT;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
diff --git a/tests/i915/gem_userptr_blits.c b/tests/i915/gem_userptr_blits.c
index 6985086694c4..83048ab3fe6e 100644
--- a/tests/i915/gem_userptr_blits.c
+++ b/tests/i915/gem_userptr_blits.c
@@ -285,7 +285,7 @@ static void store_dword(int fd, uint32_t target,
execbuf.buffers_ptr = to_user_pointer(obj);
execbuf.buffer_count = ARRAY_SIZE(obj);
execbuf.flags = 0;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
memset(obj, 0, sizeof(obj));
@@ -1266,7 +1266,7 @@ static void store_dword_rand(int i915, const intel_ctx_t *ctx,
exec.buffer_count = 2;
exec.buffers_ptr = to_user_pointer(obj);
exec.flags = engine;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
exec.flags |= I915_EXEC_SECURE;
exec.rsvd1 = ctx->id;
diff --git a/tests/i915/i915_module_load.c b/tests/i915/i915_module_load.c
index d3a86b113317..a3300c0d7ff2 100644
--- a/tests/i915/i915_module_load.c
+++ b/tests/i915/i915_module_load.c
@@ -128,7 +128,7 @@ static void store_all(int i915)
batch[value] = nengine;
execbuf.flags = e->flags;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.flags |= I915_EXEC_NO_RELOC | I915_EXEC_HANDLE_LUT;
execbuf.rsvd1 = ctx->id;
diff --git a/tests/prime_vgem.c b/tests/prime_vgem.c
index 06be273c0b6f..36a10b177517 100644
--- a/tests/prime_vgem.c
+++ b/tests/prime_vgem.c
@@ -593,7 +593,7 @@ static void work(int i915, uint64_t ahnd, uint64_t scratch_offset, int dmabuf,
execbuf.buffers_ptr = (uintptr_t)obj;
execbuf.buffer_count = 2;
execbuf.flags = ring;
- if (gen < 6)
+ if (gem_store_dword_needs_secure(gen))
execbuf.flags |= I915_EXEC_SECURE;
execbuf.rsvd1 = ctx->id;
--
2.39.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [igt-dev] [PATCH i-g-t 2/2] Silence compiler warnings on 32bit
2023-01-27 19:22 [igt-dev] [PATCH i-g-t 1/2] intel: Unify STORE_DWORD gen checks Ville Syrjala
@ 2023-01-27 19:22 ` Ville Syrjala
2023-01-27 20:27 ` [igt-dev] ✗ Fi.CI.BAT: failure for series starting with [i-g-t,1/2] intel: Unify STORE_DWORD gen checks Patchwork
` (3 subsequent siblings)
4 siblings, 0 replies; 7+ messages in thread
From: Ville Syrjala @ 2023-01-27 19:22 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
uint64_t is unsigned long long on 32bit x86. Use %PRIu64
instead of %lu when printing them to avoid warnings.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
lib/igt_sysfs.c | 5 +++--
tests/i915/gem_lmem_swapping.c | 6 +++---
2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/lib/igt_sysfs.c b/lib/igt_sysfs.c
index 8021ba9cbb2e..76593c4ac722 100644
--- a/lib/igt_sysfs.c
+++ b/lib/igt_sysfs.c
@@ -801,7 +801,8 @@ static int rw_attr_sweep(igt_sysfs_rw_attr_t *rw)
while (set < UINT64_MAX / 2) {
ret = igt_sysfs_set_u64(rw->dir, rw->attr, set);
get = igt_sysfs_get_u64(rw->dir, rw->attr);
- igt_debug("'%s': ret %d set %lu get %lu\n", rw->attr, ret, set, get);
+ igt_debug("'%s': ret %d set %"PRIu64" get %"PRIu64"\n",
+ rw->attr, ret, set, get);
if (ret && rw_attr_equal_within_epsilon(get, set, rw->tol)) {
igt_debug("'%s': matches\n", rw->attr);
num_points++;
@@ -845,7 +846,7 @@ void igt_sysfs_rw_attr_verify(igt_sysfs_rw_attr_t *rw)
igt_assert(rw->start); /* cannot be 0 */
prev = igt_sysfs_get_u64(rw->dir, rw->attr);
- igt_debug("'%s': prev %lu\n", rw->attr, prev);
+ igt_debug("'%s': prev %"PRIu64"\n", rw->attr, prev);
ret = rw_attr_sweep(rw);
diff --git a/tests/i915/gem_lmem_swapping.c b/tests/i915/gem_lmem_swapping.c
index 55b044ecdd63..e7608e3171f4 100644
--- a/tests/i915/gem_lmem_swapping.c
+++ b/tests/i915/gem_lmem_swapping.c
@@ -169,7 +169,7 @@ verify_object(int i915, const struct object *obj, unsigned int flags)
uint32_t val = obj->seed + x;
igt_assert_f(buf[x] == val,
- "Object mismatch at offset %zu - found %08x, expected %08x; difference:%08x!\n",
+ "Object mismatch at offset %lu - found %08x, expected %08x; difference:%08x!\n",
x * sizeof(*buf), buf[x], val, buf[x] ^ val);
}
@@ -364,7 +364,7 @@ static void __do_evict(int i915,
}
}
- igt_debug("obj size min/max=%lu %s/%lu %s, count=%u, seed: %u\n",
+ igt_debug("obj size min/max=%"PRIu64" %s/%"PRIu64" %s, count=%u, seed: %u\n",
readable_size(params->size.min), readable_unit(params->size.min),
readable_size(params->size.max), readable_unit(params->size.max),
params->count, seed);
@@ -513,7 +513,7 @@ static void fill_params(int i915, struct params *params,
(region->probed_size >> 20);
igt_info("Memory: system-total %dMiB, lmem-region %lldMiB, usage-limit %dMiB\n",
swap_mb, (region->probed_size >> 20), params->mem_limit);
- igt_info("Using %u thread(s), %u loop(s), %u objects of %lu %s - %lu %s, seed: %u, oom: %s\n",
+ igt_info("Using %u thread(s), %u loop(s), %u objects of %"PRIu64" %s - %"PRIu64" %s, seed: %u, oom: %s\n",
params->flags & TEST_PARALLEL ? nproc : 1,
params->loops,
params->count,
--
2.39.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [igt-dev] ✗ Fi.CI.BAT: failure for series starting with [i-g-t,1/2] intel: Unify STORE_DWORD gen checks
2023-01-27 19:22 [igt-dev] [PATCH i-g-t 1/2] intel: Unify STORE_DWORD gen checks Ville Syrjala
2023-01-27 19:22 ` [igt-dev] [PATCH i-g-t 2/2] Silence compiler warnings on 32bit Ville Syrjala
@ 2023-01-27 20:27 ` Patchwork
2023-01-27 23:21 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] intel: Unify STORE_DWORD gen checks (rev2) Patchwork
` (2 subsequent siblings)
4 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2023-01-27 20:27 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 5139 bytes --]
== Series Details ==
Series: series starting with [i-g-t,1/2] intel: Unify STORE_DWORD gen checks
URL : https://patchwork.freedesktop.org/series/113446/
State : failure
== Summary ==
CI Bug Log - changes from IGT_7141 -> IGTPW_8414
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with IGTPW_8414 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_8414, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8414/index.html
Participating hosts (25 -> 25)
------------------------------
Additional (1): fi-kbl-soraka
Missing (1): fi-snb-2520m
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_8414:
### IGT changes ###
#### Possible regressions ####
* igt@i915_selftest@live@execlists:
- fi-kbl-soraka: NOTRUN -> [INCOMPLETE][1]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8414/fi-kbl-soraka/igt@i915_selftest@live@execlists.html
Known issues
------------
Here are the changes found in IGTPW_8414 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_huc_copy@huc-copy:
- fi-kbl-soraka: NOTRUN -> [SKIP][2] ([fdo#109271] / [i915#2190])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8414/fi-kbl-soraka/igt@gem_huc_copy@huc-copy.html
* igt@gem_lmem_swapping@basic:
- fi-kbl-soraka: NOTRUN -> [SKIP][3] ([fdo#109271] / [i915#4613]) +3 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8414/fi-kbl-soraka/igt@gem_lmem_swapping@basic.html
* igt@i915_selftest@live@gt_heartbeat:
- fi-kbl-soraka: NOTRUN -> [DMESG-FAIL][4] ([i915#5334] / [i915#7872])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8414/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html
* igt@i915_selftest@live@gt_pm:
- fi-kbl-soraka: NOTRUN -> [DMESG-FAIL][5] ([i915#1886])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8414/fi-kbl-soraka/igt@i915_selftest@live@gt_pm.html
* igt@kms_chamelium_frames@hdmi-crc-fast:
- fi-kbl-soraka: NOTRUN -> [SKIP][6] ([fdo#109271]) +15 similar issues
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8414/fi-kbl-soraka/igt@kms_chamelium_frames@hdmi-crc-fast.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions-varying-size:
- fi-bsw-n3050: [PASS][7] -> [FAIL][8] ([i915#6298])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7141/fi-bsw-n3050/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions-varying-size.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8414/fi-bsw-n3050/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions-varying-size.html
#### Possible fixes ####
* igt@i915_selftest@live@hangcheck:
- {bat-dg2-9}: [ABORT][9] -> [PASS][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7141/bat-dg2-9/igt@i915_selftest@live@hangcheck.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8414/bat-dg2-9/igt@i915_selftest@live@hangcheck.html
* igt@i915_selftest@live@reset:
- {bat-rpls-2}: [ABORT][11] -> [PASS][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7141/bat-rpls-2/igt@i915_selftest@live@reset.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8414/bat-rpls-2/igt@i915_selftest@live@reset.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
[i915#1886]: https://gitlab.freedesktop.org/drm/intel/issues/1886
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
[i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
[i915#6298]: https://gitlab.freedesktop.org/drm/intel/issues/6298
[i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367
[i915#7699]: https://gitlab.freedesktop.org/drm/intel/issues/7699
[i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
[i915#7872]: https://gitlab.freedesktop.org/drm/intel/issues/7872
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_7141 -> IGTPW_8414
CI-20190529: 20190529
CI_DRM_12656: 5a9d8eeec978f2373afe9e049eaa42f67b42074a @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_8414: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8414/index.html
IGT_7141: a978df7912acda18eada1b1d2ae4b438ed3e940b @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Testlist changes
----------------
-igt@i915_power@sanity
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8414/index.html
[-- Attachment #2: Type: text/html, Size: 5774 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] intel: Unify STORE_DWORD gen checks (rev2)
2023-01-27 19:22 [igt-dev] [PATCH i-g-t 1/2] intel: Unify STORE_DWORD gen checks Ville Syrjala
2023-01-27 19:22 ` [igt-dev] [PATCH i-g-t 2/2] Silence compiler warnings on 32bit Ville Syrjala
2023-01-27 20:27 ` [igt-dev] ✗ Fi.CI.BAT: failure for series starting with [i-g-t,1/2] intel: Unify STORE_DWORD gen checks Patchwork
@ 2023-01-27 23:21 ` Patchwork
2023-01-28 5:34 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2023-01-30 17:24 ` [igt-dev] [PATCH i-g-t 1/2] intel: Unify STORE_DWORD gen checks Kamil Konieczny
4 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2023-01-27 23:21 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 6573 bytes --]
== Series Details ==
Series: series starting with [i-g-t,1/2] intel: Unify STORE_DWORD gen checks (rev2)
URL : https://patchwork.freedesktop.org/series/113446/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_12658 -> IGTPW_8415
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/index.html
Participating hosts (24 -> 24)
------------------------------
Additional (1): fi-kbl-soraka
Missing (1): fi-snb-2520m
Known issues
------------
Here are the changes found in IGTPW_8415 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_huc_copy@huc-copy:
- fi-kbl-soraka: NOTRUN -> [SKIP][1] ([fdo#109271] / [i915#2190])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/fi-kbl-soraka/igt@gem_huc_copy@huc-copy.html
* igt@gem_lmem_swapping@basic:
- fi-kbl-soraka: NOTRUN -> [SKIP][2] ([fdo#109271] / [i915#4613]) +3 similar issues
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/fi-kbl-soraka/igt@gem_lmem_swapping@basic.html
* igt@i915_selftest@live@dmabuf:
- fi-bsw-nick: [PASS][3] -> [DMESG-FAIL][4] ([i915#7562])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/fi-bsw-nick/igt@i915_selftest@live@dmabuf.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/fi-bsw-nick/igt@i915_selftest@live@dmabuf.html
* igt@i915_selftest@live@gt_pm:
- fi-kbl-soraka: NOTRUN -> [DMESG-FAIL][5] ([i915#1886])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/fi-kbl-soraka/igt@i915_selftest@live@gt_pm.html
* igt@i915_selftest@live@hangcheck:
- bat-dg1-6: [PASS][6] -> [ABORT][7] ([i915#4983])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/bat-dg1-6/igt@i915_selftest@live@hangcheck.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/bat-dg1-6/igt@i915_selftest@live@hangcheck.html
* igt@kms_chamelium_frames@hdmi-crc-fast:
- fi-kbl-soraka: NOTRUN -> [SKIP][8] ([fdo#109271]) +15 similar issues
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/fi-kbl-soraka/igt@kms_chamelium_frames@hdmi-crc-fast.html
#### Possible fixes ####
* igt@core_hotunplug@unbind-rebind:
- {bat-dg2-11}: [DMESG-WARN][9] ([i915#1982]) -> [PASS][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/bat-dg2-11/igt@core_hotunplug@unbind-rebind.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/bat-dg2-11/igt@core_hotunplug@unbind-rebind.html
* igt@gem_exec_suspend@basic-s0@smem:
- {bat-rpls-1}: [ABORT][11] -> [PASS][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/bat-rpls-1/igt@gem_exec_suspend@basic-s0@smem.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/bat-rpls-1/igt@gem_exec_suspend@basic-s0@smem.html
* igt@i915_pm_rpm@basic-rte:
- {bat-adlp-6}: [ABORT][13] -> [PASS][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/bat-adlp-6/igt@i915_pm_rpm@basic-rte.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/bat-adlp-6/igt@i915_pm_rpm@basic-rte.html
* igt@i915_pm_rpm@module-reload:
- {bat-dg2-11}: [DMESG-WARN][15] -> [PASS][16]
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/bat-dg2-11/igt@i915_pm_rpm@module-reload.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/bat-dg2-11/igt@i915_pm_rpm@module-reload.html
* igt@i915_selftest@live@gt_heartbeat:
- fi-apl-guc: [DMESG-FAIL][17] ([i915#5334]) -> [PASS][18]
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/fi-apl-guc/igt@i915_selftest@live@gt_heartbeat.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/fi-apl-guc/igt@i915_selftest@live@gt_heartbeat.html
* igt@i915_selftest@live@gt_lrc:
- {bat-dg2-11}: [DMESG-WARN][19] ([i915#2867]) -> [PASS][20] +4 similar issues
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/bat-dg2-11/igt@i915_selftest@live@gt_lrc.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/bat-dg2-11/igt@i915_selftest@live@gt_lrc.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions-varying-size:
- fi-bsw-n3050: [FAIL][21] ([i915#6298]) -> [PASS][22]
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/fi-bsw-n3050/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions-varying-size.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/fi-bsw-n3050/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions-varying-size.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
[i915#1886]: https://gitlab.freedesktop.org/drm/intel/issues/1886
[i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#2867]: https://gitlab.freedesktop.org/drm/intel/issues/2867
[i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
[i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
[i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
[i915#6298]: https://gitlab.freedesktop.org/drm/intel/issues/6298
[i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
[i915#7562]: https://gitlab.freedesktop.org/drm/intel/issues/7562
[i915#7699]: https://gitlab.freedesktop.org/drm/intel/issues/7699
[i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_7141 -> IGTPW_8415
CI-20190529: 20190529
CI_DRM_12658: a9e72f4e0baf2e3e306da0063f98099044d85285 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_8415: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/index.html
IGT_7141: a978df7912acda18eada1b1d2ae4b438ed3e940b @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/index.html
[-- Attachment #2: Type: text/html, Size: 7100 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for series starting with [i-g-t,1/2] intel: Unify STORE_DWORD gen checks (rev2)
2023-01-27 19:22 [igt-dev] [PATCH i-g-t 1/2] intel: Unify STORE_DWORD gen checks Ville Syrjala
` (2 preceding siblings ...)
2023-01-27 23:21 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] intel: Unify STORE_DWORD gen checks (rev2) Patchwork
@ 2023-01-28 5:34 ` Patchwork
2023-01-30 17:24 ` [igt-dev] [PATCH i-g-t 1/2] intel: Unify STORE_DWORD gen checks Kamil Konieczny
4 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2023-01-28 5:34 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 21363 bytes --]
== Series Details ==
Series: series starting with [i-g-t,1/2] intel: Unify STORE_DWORD gen checks (rev2)
URL : https://patchwork.freedesktop.org/series/113446/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_12658_full -> IGTPW_8415_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/index.html
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_8415_full:
### IGT changes ###
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* igt@kms_plane_cursor@viewport@pipe-a-hdmi-a-4-size-128:
- {shard-dg1}: NOTRUN -> [FAIL][1] +3 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-dg1-16/igt@kms_plane_cursor@viewport@pipe-a-hdmi-a-4-size-128.html
Known issues
------------
Here are the changes found in IGTPW_8415_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_fair@basic-pace-solo@rcs0:
- shard-glk: [PASS][2] -> [FAIL][3] ([i915#2842])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-glk3/igt@gem_exec_fair@basic-pace-solo@rcs0.html
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-glk3/igt@gem_exec_fair@basic-pace-solo@rcs0.html
* igt@kms_atomic_interruptible@universal-setplane-primary@hdmi-a-1-pipe-a:
- shard-glk: [PASS][4] -> [DMESG-WARN][5] ([i915#118])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-glk6/igt@kms_atomic_interruptible@universal-setplane-primary@hdmi-a-1-pipe-a.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-glk4/igt@kms_atomic_interruptible@universal-setplane-primary@hdmi-a-1-pipe-a.html
* igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic:
- shard-glk: [PASS][6] -> [FAIL][7] ([i915#72])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-glk4/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-glk6/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html
#### Possible fixes ####
* igt@drm_fdinfo@idle@rcs0:
- {shard-rkl}: [FAIL][8] ([i915#7742]) -> [PASS][9]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-4/igt@drm_fdinfo@idle@rcs0.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-5/igt@drm_fdinfo@idle@rcs0.html
* igt@fbdev@eof:
- {shard-rkl}: [SKIP][10] ([i915#2582]) -> [PASS][11] +1 similar issue
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-1/igt@fbdev@eof.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-6/igt@fbdev@eof.html
* igt@gem_eio@in-flight-suspend:
- {shard-rkl}: [FAIL][12] ([fdo#103375]) -> [PASS][13]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-3/igt@gem_eio@in-flight-suspend.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-1/igt@gem_eio@in-flight-suspend.html
* igt@gem_exec_capture@pi@vcs0:
- {shard-rkl}: [ABORT][14] -> [PASS][15]
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-6/igt@gem_exec_capture@pi@vcs0.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-4/igt@gem_exec_capture@pi@vcs0.html
* igt@gem_exec_fair@basic-none-rrul@rcs0:
- {shard-rkl}: [FAIL][16] ([i915#2842]) -> [PASS][17]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-2/igt@gem_exec_fair@basic-none-rrul@rcs0.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-5/igt@gem_exec_fair@basic-none-rrul@rcs0.html
* igt@gem_pwrite_snooped:
- {shard-rkl}: [SKIP][18] ([i915#3282]) -> [PASS][19] +3 similar issues
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-4/igt@gem_pwrite_snooped.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-5/igt@gem_pwrite_snooped.html
* igt@gem_set_tiling_vs_blt@tiled-to-untiled:
- {shard-rkl}: [SKIP][20] ([i915#3281]) -> [PASS][21] +1 similar issue
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-3/igt@gem_set_tiling_vs_blt@tiled-to-untiled.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-5/igt@gem_set_tiling_vs_blt@tiled-to-untiled.html
* igt@gem_sync@basic-all:
- shard-glk: [DMESG-WARN][22] ([i915#118]) -> [PASS][23]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-glk4/igt@gem_sync@basic-all.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-glk5/igt@gem_sync@basic-all.html
* igt@gen9_exec_parse@shadow-peek:
- {shard-rkl}: [SKIP][24] ([i915#2527]) -> [PASS][25] +1 similar issue
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-1/igt@gen9_exec_parse@shadow-peek.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-5/igt@gen9_exec_parse@shadow-peek.html
* igt@i915_pm_dc@dc9-dpms:
- {shard-rkl}: [SKIP][26] ([i915#3361]) -> [PASS][27]
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-5/igt@i915_pm_dc@dc9-dpms.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-6/igt@i915_pm_dc@dc9-dpms.html
- {shard-tglu-9}: [FAIL][28] ([i915#4275]) -> [PASS][29]
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-tglu-9/igt@i915_pm_dc@dc9-dpms.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-tglu-9/igt@i915_pm_dc@dc9-dpms.html
* igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_rc_ccs:
- {shard-rkl}: [SKIP][30] ([i915#1845] / [i915#4098]) -> [PASS][31] +31 similar issues
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-5/igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_rc_ccs.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-6/igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_rc_ccs.html
* igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions:
- shard-glk: [FAIL][32] ([i915#2346]) -> [PASS][33]
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-glk6/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions.html
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-glk6/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions.html
* igt@kms_dp_aux_dev:
- {shard-rkl}: [SKIP][34] ([i915#1257]) -> [PASS][35]
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-4/igt@kms_dp_aux_dev.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-6/igt@kms_dp_aux_dev.html
* igt@kms_fbcon_fbt@psr:
- {shard-rkl}: [SKIP][36] ([i915#3955]) -> [PASS][37]
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-4/igt@kms_fbcon_fbt@psr.html
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-6/igt@kms_fbcon_fbt@psr.html
* igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@bc-hdmi-a1-hdmi-a2:
- shard-glk: [FAIL][38] ([i915#79]) -> [PASS][39]
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-glk5/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@bc-hdmi-a1-hdmi-a2.html
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-glk4/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@bc-hdmi-a1-hdmi-a2.html
* igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw:
- {shard-rkl}: [SKIP][40] ([i915#1849] / [i915#4098]) -> [PASS][41] +18 similar issues
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-3/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html
* igt@kms_plane@pixel-format-source-clamping@pipe-b-planes:
- {shard-rkl}: [SKIP][42] ([i915#1849]) -> [PASS][43] +2 similar issues
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-5/igt@kms_plane@pixel-format-source-clamping@pipe-b-planes.html
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-6/igt@kms_plane@pixel-format-source-clamping@pipe-b-planes.html
* igt@kms_psr@cursor_mmap_cpu:
- {shard-rkl}: [SKIP][44] ([i915#1072]) -> [PASS][45] +2 similar issues
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-1/igt@kms_psr@cursor_mmap_cpu.html
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-6/igt@kms_psr@cursor_mmap_cpu.html
* igt@kms_universal_plane@cursor-fb-leak-pipe-b:
- {shard-rkl}: [SKIP][46] ([i915#1845] / [i915#4070] / [i915#4098]) -> [PASS][47]
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-2/igt@kms_universal_plane@cursor-fb-leak-pipe-b.html
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-6/igt@kms_universal_plane@cursor-fb-leak-pipe-b.html
* igt@perf@polling-small-buf:
- {shard-rkl}: [FAIL][48] ([i915#1722]) -> [PASS][49]
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-2/igt@perf@polling-small-buf.html
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-5/igt@perf@polling-small-buf.html
* igt@perf_pmu@most-busy-idle-check-all@rcs0:
- {shard-rkl}: [FAIL][50] ([i915#4349]) -> [PASS][51]
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12658/shard-rkl-4/igt@perf_pmu@most-busy-idle-check-all@rcs0.html
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/shard-rkl-6/igt@perf_pmu@most-busy-idle-check-all@rcs0.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
[fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279
[fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
[fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
[fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[fdo#109300]: https://bugs.freedesktop.org/show_bug.cgi?id=109300
[fdo#109308]: https://bugs.freedesktop.org/show_bug.cgi?id=109308
[fdo#109309]: https://bugs.freedesktop.org/show_bug.cgi?id=109309
[fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
[fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
[fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
[fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
[fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
[fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
[fdo#111644]: https://bugs.freedesktop.org/show_bug.cgi?id=111644
[fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656
[fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[fdo#112054]: https://bugs.freedesktop.org/show_bug.cgi?id=112054
[fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118
[i915#1257]: https://gitlab.freedesktop.org/drm/intel/issues/1257
[i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
[i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
[i915#1722]: https://gitlab.freedesktop.org/drm/intel/issues/1722
[i915#1755]: https://gitlab.freedesktop.org/drm/intel/issues/1755
[i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
[i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
[i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
[i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
[i915#1902]: https://gitlab.freedesktop.org/drm/intel/issues/1902
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
[i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
[i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
[i915#2532]: https://gitlab.freedesktop.org/drm/intel/issues/2532
[i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
[i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
[i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
[i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
[i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
[i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
[i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
[i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
[i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
[i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
[i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
[i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
[i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
[i915#315]: https://gitlab.freedesktop.org/drm/intel/issues/315
[i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
[i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
[i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
[i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
[i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
[i915#3318]: https://gitlab.freedesktop.org/drm/intel/issues/3318
[i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
[i915#3361]: https://gitlab.freedesktop.org/drm/intel/issues/3361
[i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
[i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
[i915#3528]: https://gitlab.freedesktop.org/drm/intel/issues/3528
[i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
[i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
[i915#3547]: https://gitlab.freedesktop.org/drm/intel/issues/3547
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
[i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
[i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
[i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
[i915#3804]: https://gitlab.freedesktop.org/drm/intel/issues/3804
[i915#3826]: https://gitlab.freedesktop.org/drm/intel/issues/3826
[i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
[i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
[i915#3952]: https://gitlab.freedesktop.org/drm/intel/issues/3952
[i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
[i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
[i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
[i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
[i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
[i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
[i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
[i915#426]: https://gitlab.freedesktop.org/drm/intel/issues/426
[i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
[i915#4275]: https://gitlab.freedesktop.org/drm/intel/issues/4275
[i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
[i915#4387]: https://gitlab.freedesktop.org/drm/intel/issues/4387
[i915#4391]: https://gitlab.freedesktop.org/drm/intel/issues/4391
[i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4767]: https://gitlab.freedesktop.org/drm/intel/issues/4767
[i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
[i915#4778]: https://gitlab.freedesktop.org/drm/intel/issues/4778
[i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
[i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
[i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
[i915#4859]: https://gitlab.freedesktop.org/drm/intel/issues/4859
[i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
[i915#4874]: https://gitlab.freedesktop.org/drm/intel/issues/4874
[i915#5030]: https://gitlab.freedesktop.org/drm/intel/issues/5030
[i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
[i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
[i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
[i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288
[i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
[i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
[i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
[i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439
[i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461
[i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
[i915#5608]: https://gitlab.freedesktop.org/drm/intel/issues/5608
[i915#5775]: https://gitlab.freedesktop.org/drm/intel/issues/5775
[i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
[i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
[i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230
[i915#6245]: https://gitlab.freedesktop.org/drm/intel/issues/6245
[i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
[i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252
[i915#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301
[i915#6334]: https://gitlab.freedesktop.org/drm/intel/issues/6334
[i915#6335]: https://gitlab.freedesktop.org/drm/intel/issues/6335
[i915#6355]: https://gitlab.freedesktop.org/drm/intel/issues/6355
[i915#6403]: https://gitlab.freedesktop.org/drm/intel/issues/6403
[i915#6412]: https://gitlab.freedesktop.org/drm/intel/issues/6412
[i915#6433]: https://gitlab.freedesktop.org/drm/intel/issues/6433
[i915#6497]: https://gitlab.freedesktop.org/drm/intel/issues/6497
[i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
[i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
[i915#6590]: https://gitlab.freedesktop.org/drm/intel/issues/6590
[i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
[i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
[i915#6944]: https://gitlab.freedesktop.org/drm/intel/issues/6944
[i915#6946]: https://gitlab.freedesktop.org/drm/intel/issues/6946
[i915#6953]: https://gitlab.freedesktop.org/drm/intel/issues/6953
[i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
[i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
[i915#7128]: https://gitlab.freedesktop.org/drm/intel/issues/7128
[i915#72]: https://gitlab.freedesktop.org/drm/intel/issues/72
[i915#7294]: https://gitlab.freedesktop.org/drm/intel/issues/7294
[i915#7561]: https://gitlab.freedesktop.org/drm/intel/issues/7561
[i915#7582]: https://gitlab.freedesktop.org/drm/intel/issues/7582
[i915#7651]: https://gitlab.freedesktop.org/drm/intel/issues/7651
[i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
[i915#7701]: https://gitlab.freedesktop.org/drm/intel/issues/7701
[i915#7707]: https://gitlab.freedesktop.org/drm/intel/issues/7707
[i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711
[i915#7742]: https://gitlab.freedesktop.org/drm/intel/issues/7742
[i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
[i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_7141 -> IGTPW_8415
CI-20190529: 20190529
CI_DRM_12658: a9e72f4e0baf2e3e306da0063f98099044d85285 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_8415: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/index.html
IGT_7141: a978df7912acda18eada1b1d2ae4b438ed3e940b @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8415/index.html
[-- Attachment #2: Type: text/html, Size: 13776 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] intel: Unify STORE_DWORD gen checks
2023-01-27 19:22 [igt-dev] [PATCH i-g-t 1/2] intel: Unify STORE_DWORD gen checks Ville Syrjala
` (3 preceding siblings ...)
2023-01-28 5:34 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2023-01-30 17:24 ` Kamil Konieczny
2023-01-30 17:29 ` Ville Syrjälä
4 siblings, 1 reply; 7+ messages in thread
From: Kamil Konieczny @ 2023-01-30 17:24 UTC (permalink / raw)
To: igt-dev
Hi Ville,
thank you for patches, I have few nits, see below.
On 2023-01-27 at 21:22:19 +0200, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> A bunch of tests use a lax 'gen<6' check to determine if
> MI_STORE_DWORD needs a secure batch or not, while other
> places use the more accurate gen==4||5 check. And that
> check is also written in two different styles in various
> places. Unify all of it to use a common helper.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
> lib/igt_dummyload.c | 2 +-
> lib/igt_gt.c | 5 +++++
> lib/igt_gt.h | 1 +
> lib/igt_store.c | 2 +-
> tests/i915/gem_ctx_shared.c | 4 ++--
> tests/i915/gem_exec_async.c | 2 +-
> tests/i915/gem_exec_capture.c | 4 ++--
> tests/i915/gem_exec_fence.c | 4 ++--
> tests/i915/gem_exec_flush.c | 4 ++--
> tests/i915/gem_exec_gttfill.c | 2 +-
> tests/i915/gem_exec_nop.c | 4 ++--
> tests/i915/gem_exec_parallel.c | 2 +-
> tests/i915/gem_exec_params.c | 2 +-
> tests/i915/gem_exec_reloc.c | 7 +++++--
> tests/i915/gem_exec_schedule.c | 4 ++--
> tests/i915/gem_exec_store.c | 6 +++---
> tests/i915/gem_exec_suspend.c | 2 +-
> tests/i915/gem_exec_whisper.c | 2 +-
> tests/i915/gem_ringfill.c | 2 +-
> tests/i915/gem_softpin.c | 4 ++--
> tests/i915/gem_sync.c | 8 ++++----
> tests/i915/gem_userptr_blits.c | 4 ++--
> tests/i915/i915_module_load.c | 2 +-
> tests/prime_vgem.c | 2 +-
Looks like there are some more tests using I915_EXEC_SECURE:
tests/i915/gem_exec_big.c
tests/i915/gem_exec_fair.c
tests/i915/perf_pmu.c
> 24 files changed, 45 insertions(+), 36 deletions(-)
>
> diff --git a/lib/igt_dummyload.c b/lib/igt_dummyload.c
> index 5f3c6b10c7d5..dbf164421954 100644
> --- a/lib/igt_dummyload.c
> +++ b/lib/igt_dummyload.c
> @@ -217,7 +217,7 @@ emit_recursive_batch(igt_spin_t *spin,
> } else if (opts->flags & IGT_SPIN_POLL_RUN) {
> igt_assert(!opts->dependency);
>
> - if (gen == 4 || gen == 5) {
> + if (gem_store_dword_needs_secure(gen)) {
> execbuf->flags |= I915_EXEC_SECURE;
> igt_require(__igt_device_set_master(fd) == 0);
> }
> diff --git a/lib/igt_gt.c b/lib/igt_gt.c
> index d4a825e6642e..f91c956e53d9 100644
> --- a/lib/igt_gt.c
> +++ b/lib/igt_gt.c
> @@ -611,6 +611,11 @@ bool gem_can_store_dword(int fd, unsigned int engine)
> gem_execbuf_flags_to_engine_class(engine));
> }
>
All public library functions should be described, please put it here.
Regards,
Kamil
> +bool gem_store_dword_needs_secure(int gen)
> +{
> + return gen == 4 || gen == 5;
> +}
> +
> const struct intel_execution_engine2 intel_execution_engines2[] = {
> { "rcs0", I915_ENGINE_CLASS_RENDER, 0, I915_EXEC_RENDER },
> { "bcs0", I915_ENGINE_CLASS_COPY, 0, I915_EXEC_BLT },
> diff --git a/lib/igt_gt.h b/lib/igt_gt.h
> index 3d10349e4621..3a60b3747ba5 100644
> --- a/lib/igt_gt.h
> +++ b/lib/igt_gt.h
> @@ -73,6 +73,7 @@ unsigned intel_detect_and_clear_missed_interrupts(int fd);
>
> bool gem_can_store_dword(int fd, unsigned int engine);
> bool gem_class_can_store_dword(int fd, int class);
> +bool gem_store_dword_needs_secure(int gen);
>
> extern const struct intel_execution_engine2 {
> char name[16];
> diff --git a/lib/igt_store.c b/lib/igt_store.c
> index 98c6c4fbd192..fd8dd1dd664b 100644
> --- a/lib/igt_store.c
> +++ b/lib/igt_store.c
> @@ -48,7 +48,7 @@ void igt_store_word(int fd, uint64_t ahnd, const intel_ctx_t *ctx,
> execbuf.flags |= I915_EXEC_FENCE_IN;
> execbuf.rsvd2 = fence;
> }
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
>
> memset(obj, 0, sizeof(obj));
> diff --git a/tests/i915/gem_ctx_shared.c b/tests/i915/gem_ctx_shared.c
> index 18d8cc013d68..209377be1c84 100644
> --- a/tests/i915/gem_ctx_shared.c
> +++ b/tests/i915/gem_ctx_shared.c
> @@ -327,7 +327,7 @@ static void exec_shared_gtt(int i915, const intel_ctx_cfg_t *cfg,
> obj.handle = batch;
> obj.offset += 8192; /* make sure we don't cause an eviction! */
> execbuf.rsvd1 = ctx[1]->id;
> - if (gen > 3 && gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> gem_execbuf(i915, &execbuf);
>
> @@ -528,7 +528,7 @@ static void store_dword(int i915, uint64_t ahnd, const intel_ctx_t *ctx,
> execbuf.buffers_ptr = to_user_pointer(obj + !cork);
> execbuf.buffer_count = 2 + !!cork;
> execbuf.flags = ring;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> diff --git a/tests/i915/gem_exec_async.c b/tests/i915/gem_exec_async.c
> index d50fe45ec57c..0d4efd736d71 100644
> --- a/tests/i915/gem_exec_async.c
> +++ b/tests/i915/gem_exec_async.c
> @@ -44,7 +44,7 @@ static void store_dword(int fd, int id, const intel_ctx_t *ctx,
> execbuf.buffers_ptr = to_user_pointer(obj);
> execbuf.buffer_count = 2;
> execbuf.flags = ring;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> diff --git a/tests/i915/gem_exec_capture.c b/tests/i915/gem_exec_capture.c
> index 2db58266fd4e..9ecf2b546da0 100644
> --- a/tests/i915/gem_exec_capture.c
> +++ b/tests/i915/gem_exec_capture.c
> @@ -346,7 +346,7 @@ static void __capture1(int fd, int dir, uint64_t ahnd, const intel_ctx_t *ctx,
> execbuf.buffers_ptr = (uintptr_t)obj;
> execbuf.buffer_count = ARRAY_SIZE(obj);
> execbuf.flags = e->flags;
> - if (gen > 3 && gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.flags |= I915_EXEC_FENCE_OUT;
> execbuf.rsvd1 = ctx->id;
> @@ -536,7 +536,7 @@ __captureN(int fd, int dir, uint64_t ahnd, const intel_ctx_t *ctx,
> execbuf.buffers_ptr = (uintptr_t)obj;
> execbuf.buffer_count = count + 2;
> execbuf.flags = e->flags;
> - if (gen > 3 && gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.flags |= I915_EXEC_FENCE_OUT;
> execbuf.rsvd1 = ctx->id;
> diff --git a/tests/i915/gem_exec_fence.c b/tests/i915/gem_exec_fence.c
> index 6bf1cdb57741..b713cb16d790 100644
> --- a/tests/i915/gem_exec_fence.c
> +++ b/tests/i915/gem_exec_fence.c
> @@ -622,7 +622,7 @@ static void test_parallel(int i915, const intel_ctx_t *ctx,
> batch[++i] = MI_BATCH_BUFFER_END;
> gem_write(i915, obj[1].handle, 0, batch, sizeof(batch));
>
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
>
> gem_execbuf(i915, &execbuf);
> @@ -745,7 +745,7 @@ static void test_concurrent(int i915, const intel_ctx_t *ctx,
> tmp_ctx = intel_ctx_create(i915, &ctx->cfg);
> execbuf.rsvd1 = tmp_ctx->id;
> execbuf.rsvd2 = spin->out_fence;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
>
> gem_execbuf(i915, &execbuf);
> diff --git a/tests/i915/gem_exec_flush.c b/tests/i915/gem_exec_flush.c
> index 40c58db2bb7d..b41eafcd07c5 100644
> --- a/tests/i915/gem_exec_flush.c
> +++ b/tests/i915/gem_exec_flush.c
> @@ -168,7 +168,7 @@ static void run(int fd, unsigned ring, int nchild, int timeout,
> execbuf.buffers_ptr = to_user_pointer(obj);
> execbuf.buffer_count = 3;
> execbuf.flags = ring | (1 << 12);
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
>
> obj[1].handle = gem_create(fd, 1024*64);
> @@ -414,7 +414,7 @@ static void batch(int fd, unsigned ring, int nchild, int timeout,
> execbuf.buffers_ptr = to_user_pointer(obj);
> execbuf.buffer_count = 2;
> execbuf.flags = ring | (1 << 12);
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
>
> obj[1].handle = gem_create(fd, 64<<10);
> diff --git a/tests/i915/gem_exec_gttfill.c b/tests/i915/gem_exec_gttfill.c
> index 137277fe5313..d647f544e446 100644
> --- a/tests/i915/gem_exec_gttfill.c
> +++ b/tests/i915/gem_exec_gttfill.c
> @@ -166,7 +166,7 @@ static void fillgtt(int fd, const intel_ctx_t *ctx, unsigned ring, int timeout)
>
> memset(&execbuf, 0, sizeof(execbuf));
> execbuf.buffer_count = 1;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> diff --git a/tests/i915/gem_exec_nop.c b/tests/i915/gem_exec_nop.c
> index f35cc8401f91..f11a1dd92679 100644
> --- a/tests/i915/gem_exec_nop.c
> +++ b/tests/i915/gem_exec_nop.c
> @@ -120,7 +120,7 @@ static void poll_ring(int fd, const intel_ctx_t *ctx,
> uint64_t elapsed;
>
> flags = I915_EXEC_NO_RELOC;
> - if (gen == 4 || gen == 5)
> + if (gem_store_dword_needs_secure(gen))
> flags |= I915_EXEC_SECURE;
>
> igt_require(gem_class_can_store_dword(fd, e->class));
> @@ -234,7 +234,7 @@ static void poll_sequential(int fd, const intel_ctx_t *ctx,
> bool cached;
>
> flags = I915_EXEC_NO_RELOC;
> - if (gen == 4 || gen == 5)
> + if (gem_store_dword_needs_secure(gen))
> flags |= I915_EXEC_SECURE;
>
> nengine = 0;
> diff --git a/tests/i915/gem_exec_parallel.c b/tests/i915/gem_exec_parallel.c
> index 429620884b1f..7676244568a7 100644
> --- a/tests/i915/gem_exec_parallel.c
> +++ b/tests/i915/gem_exec_parallel.c
> @@ -127,7 +127,7 @@ static void *thread(void *data)
> execbuf.flags = t->engine;
> execbuf.flags |= I915_EXEC_HANDLE_LUT;
> execbuf.flags |= I915_EXEC_NO_RELOC;
> - if (t->gen < 6)
> + if (t->gen == 4 || t->gen == 5)
> execbuf.flags |= I915_EXEC_SECURE;
> if (t->flags & (CONTEXTS | FDS)) {
> tmp_ctx = intel_ctx_create(fd, &t->ctx->cfg);
> diff --git a/tests/i915/gem_exec_params.c b/tests/i915/gem_exec_params.c
> index 618635ec38fb..909c6b7daf44 100644
> --- a/tests/i915/gem_exec_params.c
> +++ b/tests/i915/gem_exec_params.c
> @@ -171,7 +171,7 @@ static void test_batch_first(int fd)
> memset(&execbuf, 0, sizeof(execbuf));
> execbuf.buffers_ptr = to_user_pointer(obj);
> execbuf.buffer_count = ARRAY_SIZE(obj);
> - if (gen > 3 && gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
>
> /* Normal mode */
> diff --git a/tests/i915/gem_exec_reloc.c b/tests/i915/gem_exec_reloc.c
> index 7a354a32a1a0..eefc10f1f136 100644
> --- a/tests/i915/gem_exec_reloc.c
> +++ b/tests/i915/gem_exec_reloc.c
> @@ -307,7 +307,7 @@ static void active(int fd, const intel_ctx_t *ctx, unsigned engine)
> memset(&execbuf, 0, sizeof(execbuf));
> execbuf.buffers_ptr = to_user_pointer(obj);
> execbuf.buffer_count = 2;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> @@ -732,7 +732,7 @@ static void concurrent_child(int i915, const intel_ctx_t *ctx,
> struct drm_i915_gem_execbuffer2 execbuf = {
> .buffers_ptr = to_user_pointer(obj),
> .buffer_count = ARRAY_SIZE(obj),
> - .flags = e->flags | I915_EXEC_HANDLE_LUT | (gen < 6 ? I915_EXEC_SECURE : 0),
> + .flags = e->flags | I915_EXEC_HANDLE_LUT,
> .rsvd1 = ctx->id,
> };
> uint32_t *batch = &obj[num_common + 1].handle;
> @@ -740,6 +740,9 @@ static void concurrent_child(int i915, const intel_ctx_t *ctx,
> uint32_t *x;
> int err = 0;
>
> + if (gem_store_dword_needs_secure(gen))
> + execbuf.flags |= I915_EXEC_SECURE;
> +
> memset(obj, 0, sizeof(obj));
> obj[0].handle = gem_create(i915, 64 * CONCURRENT * 4);
>
> diff --git a/tests/i915/gem_exec_schedule.c b/tests/i915/gem_exec_schedule.c
> index 58b118c79ea1..2fdc1ea0e786 100644
> --- a/tests/i915/gem_exec_schedule.c
> +++ b/tests/i915/gem_exec_schedule.c
> @@ -108,7 +108,7 @@ static uint32_t __store_dword(int fd, uint64_t ahnd, const intel_ctx_t *ctx,
> execbuf.buffers_ptr = to_user_pointer(obj + !cork);
> execbuf.buffer_count = 2 + !!cork;
> execbuf.flags = ring;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> @@ -2257,7 +2257,7 @@ static void reorder_wide(int fd, const intel_ctx_cfg_t *cfg, unsigned ring)
> execbuf.buffers_ptr = to_user_pointer(obj);
> execbuf.buffer_count = ARRAY_SIZE(obj);
> execbuf.flags = ring;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
>
> execbuf.flags |= I915_EXEC_FENCE_IN;
> diff --git a/tests/i915/gem_exec_store.c b/tests/i915/gem_exec_store.c
> index efb9907ebb2a..ec4f0bc9338e 100644
> --- a/tests/i915/gem_exec_store.c
> +++ b/tests/i915/gem_exec_store.c
> @@ -58,7 +58,7 @@ static void store_dword(int fd, const intel_ctx_t *ctx,
> execbuf.buffers_ptr = to_user_pointer(obj);
> execbuf.buffer_count = 2;
> execbuf.flags = e->flags;
> - if (gen > 3 && gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> @@ -143,7 +143,7 @@ static void store_cachelines(int fd, const intel_ctx_t *ctx,
> memset(&execbuf, 0, sizeof(execbuf));
> execbuf.buffer_count = flags & PAGES ? NCACHELINES + 1 : 2;
> execbuf.flags = e->flags;
> - if (gen > 3 && gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> @@ -255,7 +255,7 @@ static void store_all(int fd, const intel_ctx_t *ctx)
> memset(&execbuf, 0, sizeof(execbuf));
> execbuf.buffers_ptr = to_user_pointer(obj);
> execbuf.buffer_count = 2;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> diff --git a/tests/i915/gem_exec_suspend.c b/tests/i915/gem_exec_suspend.c
> index 3b59966a11d1..e14df2ad1509 100644
> --- a/tests/i915/gem_exec_suspend.c
> +++ b/tests/i915/gem_exec_suspend.c
> @@ -110,7 +110,7 @@ static void run_test(int fd, const intel_ctx_t *ctx,
> execbuf.buffers_ptr = to_user_pointer(obj);
> execbuf.buffer_count = 2;
> execbuf.flags = 1 << 11;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> diff --git a/tests/i915/gem_exec_whisper.c b/tests/i915/gem_exec_whisper.c
> index 616231aa9667..5a1a4fa9a074 100644
> --- a/tests/i915/gem_exec_whisper.c
> +++ b/tests/i915/gem_exec_whisper.c
> @@ -297,7 +297,7 @@ static void whisper(int fd, const intel_ctx_t *ctx,
> execbuf.buffer_count = 2;
> execbuf.flags = I915_EXEC_HANDLE_LUT;
> execbuf.flags |= I915_EXEC_NO_RELOC;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
>
> execbuf.rsvd1 = ctx->id;
> diff --git a/tests/i915/gem_ringfill.c b/tests/i915/gem_ringfill.c
> index 8ab00525ff28..50d0c6179db1 100644
> --- a/tests/i915/gem_ringfill.c
> +++ b/tests/i915/gem_ringfill.c
> @@ -116,7 +116,7 @@ static void setup_execbuf(int fd, const intel_ctx_t *ctx,
> execbuf->buffers_ptr = to_user_pointer(obj);
> execbuf->flags = ring | I915_EXEC_NO_RELOC | I915_EXEC_HANDLE_LUT;
>
> - if (gen > 3 && gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf->flags |= I915_EXEC_SECURE;
>
> execbuf->rsvd1 = ctx->id;
> diff --git a/tests/i915/gem_softpin.c b/tests/i915/gem_softpin.c
> index ad6d3f531c5f..f90526bffc92 100644
> --- a/tests/i915/gem_softpin.c
> +++ b/tests/i915/gem_softpin.c
> @@ -631,7 +631,7 @@ static void test_noreloc(int fd, enum sleep sleep, unsigned flags)
> memset(&execbuf, 0, sizeof(execbuf));
> execbuf.buffers_ptr = to_user_pointer(object);
> execbuf.buffer_count = 1;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> gem_execbuf(fd, &execbuf);
> gem_close(fd, object[0].handle);
> @@ -1004,7 +1004,7 @@ static void test_allocator_evict(int fd, const intel_ctx_t *ctx,
>
> memset(&execbuf, 0, sizeof(execbuf));
> execbuf.buffer_count = 1;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> diff --git a/tests/i915/gem_sync.c b/tests/i915/gem_sync.c
> index 07cabf7abcd0..e04038c55c53 100644
> --- a/tests/i915/gem_sync.c
> +++ b/tests/i915/gem_sync.c
> @@ -554,7 +554,7 @@ store_ring(int fd, const intel_ctx_t *ctx, unsigned ring,
> execbuf.flags = ied_flags(&ied, child);
> execbuf.flags |= I915_EXEC_NO_RELOC;
> execbuf.flags |= I915_EXEC_HANDLE_LUT;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> @@ -663,7 +663,7 @@ switch_ring(int fd, const intel_ctx_t *ctx, unsigned ring,
> c->execbuf.flags = ied_flags(&ied, child);
> c->execbuf.flags |= I915_EXEC_NO_RELOC;
> c->execbuf.flags |= I915_EXEC_HANDLE_LUT;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> c->execbuf.flags |= I915_EXEC_SECURE;
>
> c->ctx = intel_ctx_create(fd, &ctx->cfg);
> @@ -831,7 +831,7 @@ __store_many(int fd, const intel_ctx_t *ctx, unsigned ring,
> execbuf.flags = ring;
> execbuf.flags |= I915_EXEC_NO_RELOC;
> execbuf.flags |= I915_EXEC_HANDLE_LUT;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> @@ -1046,7 +1046,7 @@ store_all(int fd, const intel_ctx_t *ctx, int num_children, int timeout)
> execbuf.buffers_ptr = to_user_pointer(object);
> execbuf.flags |= I915_EXEC_NO_RELOC;
> execbuf.flags |= I915_EXEC_HANDLE_LUT;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> diff --git a/tests/i915/gem_userptr_blits.c b/tests/i915/gem_userptr_blits.c
> index 6985086694c4..83048ab3fe6e 100644
> --- a/tests/i915/gem_userptr_blits.c
> +++ b/tests/i915/gem_userptr_blits.c
> @@ -285,7 +285,7 @@ static void store_dword(int fd, uint32_t target,
> execbuf.buffers_ptr = to_user_pointer(obj);
> execbuf.buffer_count = ARRAY_SIZE(obj);
> execbuf.flags = 0;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
>
> memset(obj, 0, sizeof(obj));
> @@ -1266,7 +1266,7 @@ static void store_dword_rand(int i915, const intel_ctx_t *ctx,
> exec.buffer_count = 2;
> exec.buffers_ptr = to_user_pointer(obj);
> exec.flags = engine;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> exec.flags |= I915_EXEC_SECURE;
> exec.rsvd1 = ctx->id;
>
> diff --git a/tests/i915/i915_module_load.c b/tests/i915/i915_module_load.c
> index d3a86b113317..a3300c0d7ff2 100644
> --- a/tests/i915/i915_module_load.c
> +++ b/tests/i915/i915_module_load.c
> @@ -128,7 +128,7 @@ static void store_all(int i915)
> batch[value] = nengine;
>
> execbuf.flags = e->flags;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.flags |= I915_EXEC_NO_RELOC | I915_EXEC_HANDLE_LUT;
> execbuf.rsvd1 = ctx->id;
> diff --git a/tests/prime_vgem.c b/tests/prime_vgem.c
> index 06be273c0b6f..36a10b177517 100644
> --- a/tests/prime_vgem.c
> +++ b/tests/prime_vgem.c
> @@ -593,7 +593,7 @@ static void work(int i915, uint64_t ahnd, uint64_t scratch_offset, int dmabuf,
> execbuf.buffers_ptr = (uintptr_t)obj;
> execbuf.buffer_count = 2;
> execbuf.flags = ring;
> - if (gen < 6)
> + if (gem_store_dword_needs_secure(gen))
> execbuf.flags |= I915_EXEC_SECURE;
> execbuf.rsvd1 = ctx->id;
>
> --
> 2.39.1
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] intel: Unify STORE_DWORD gen checks
2023-01-30 17:24 ` [igt-dev] [PATCH i-g-t 1/2] intel: Unify STORE_DWORD gen checks Kamil Konieczny
@ 2023-01-30 17:29 ` Ville Syrjälä
0 siblings, 0 replies; 7+ messages in thread
From: Ville Syrjälä @ 2023-01-30 17:29 UTC (permalink / raw)
To: Kamil Konieczny, igt-dev
On Mon, Jan 30, 2023 at 06:24:04PM +0100, Kamil Konieczny wrote:
> Hi Ville,
>
> thank you for patches, I have few nits, see below.
>
> On 2023-01-27 at 21:22:19 +0200, Ville Syrjala wrote:
> > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> >
> > A bunch of tests use a lax 'gen<6' check to determine if
> > MI_STORE_DWORD needs a secure batch or not, while other
> > places use the more accurate gen==4||5 check. And that
> > check is also written in two different styles in various
> > places. Unify all of it to use a common helper.
> >
> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > ---
> > lib/igt_dummyload.c | 2 +-
> > lib/igt_gt.c | 5 +++++
> > lib/igt_gt.h | 1 +
> > lib/igt_store.c | 2 +-
> > tests/i915/gem_ctx_shared.c | 4 ++--
> > tests/i915/gem_exec_async.c | 2 +-
> > tests/i915/gem_exec_capture.c | 4 ++--
> > tests/i915/gem_exec_fence.c | 4 ++--
> > tests/i915/gem_exec_flush.c | 4 ++--
> > tests/i915/gem_exec_gttfill.c | 2 +-
> > tests/i915/gem_exec_nop.c | 4 ++--
> > tests/i915/gem_exec_parallel.c | 2 +-
> > tests/i915/gem_exec_params.c | 2 +-
> > tests/i915/gem_exec_reloc.c | 7 +++++--
> > tests/i915/gem_exec_schedule.c | 4 ++--
> > tests/i915/gem_exec_store.c | 6 +++---
> > tests/i915/gem_exec_suspend.c | 2 +-
> > tests/i915/gem_exec_whisper.c | 2 +-
> > tests/i915/gem_ringfill.c | 2 +-
> > tests/i915/gem_softpin.c | 4 ++--
> > tests/i915/gem_sync.c | 8 ++++----
> > tests/i915/gem_userptr_blits.c | 4 ++--
> > tests/i915/i915_module_load.c | 2 +-
> > tests/prime_vgem.c | 2 +-
>
> Looks like there are some more tests using I915_EXEC_SECURE:
>
> tests/i915/gem_exec_big.c
> tests/i915/gem_exec_fair.c
> tests/i915/perf_pmu.c
I'm not sure why exactly they need secure batches. Would
need to actually figure out what they do first.
>
> > 24 files changed, 45 insertions(+), 36 deletions(-)
> >
> > diff --git a/lib/igt_dummyload.c b/lib/igt_dummyload.c
> > index 5f3c6b10c7d5..dbf164421954 100644
> > --- a/lib/igt_dummyload.c
> > +++ b/lib/igt_dummyload.c
> > @@ -217,7 +217,7 @@ emit_recursive_batch(igt_spin_t *spin,
> > } else if (opts->flags & IGT_SPIN_POLL_RUN) {
> > igt_assert(!opts->dependency);
> >
> > - if (gen == 4 || gen == 5) {
> > + if (gem_store_dword_needs_secure(gen)) {
> > execbuf->flags |= I915_EXEC_SECURE;
> > igt_require(__igt_device_set_master(fd) == 0);
> > }
> > diff --git a/lib/igt_gt.c b/lib/igt_gt.c
> > index d4a825e6642e..f91c956e53d9 100644
> > --- a/lib/igt_gt.c
> > +++ b/lib/igt_gt.c
> > @@ -611,6 +611,11 @@ bool gem_can_store_dword(int fd, unsigned int engine)
> > gem_execbuf_flags_to_engine_class(engine));
> > }
> >
>
> All public library functions should be described, please put it here.
>
> Regards,
> Kamil
>
> > +bool gem_store_dword_needs_secure(int gen)
> > +{
> > + return gen == 4 || gen == 5;
> > +}
> > +
> > const struct intel_execution_engine2 intel_execution_engines2[] = {
> > { "rcs0", I915_ENGINE_CLASS_RENDER, 0, I915_EXEC_RENDER },
> > { "bcs0", I915_ENGINE_CLASS_COPY, 0, I915_EXEC_BLT },
> > diff --git a/lib/igt_gt.h b/lib/igt_gt.h
> > index 3d10349e4621..3a60b3747ba5 100644
> > --- a/lib/igt_gt.h
> > +++ b/lib/igt_gt.h
> > @@ -73,6 +73,7 @@ unsigned intel_detect_and_clear_missed_interrupts(int fd);
> >
> > bool gem_can_store_dword(int fd, unsigned int engine);
> > bool gem_class_can_store_dword(int fd, int class);
> > +bool gem_store_dword_needs_secure(int gen);
> >
> > extern const struct intel_execution_engine2 {
> > char name[16];
> > diff --git a/lib/igt_store.c b/lib/igt_store.c
> > index 98c6c4fbd192..fd8dd1dd664b 100644
> > --- a/lib/igt_store.c
> > +++ b/lib/igt_store.c
> > @@ -48,7 +48,7 @@ void igt_store_word(int fd, uint64_t ahnd, const intel_ctx_t *ctx,
> > execbuf.flags |= I915_EXEC_FENCE_IN;
> > execbuf.rsvd2 = fence;
> > }
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> >
> > memset(obj, 0, sizeof(obj));
> > diff --git a/tests/i915/gem_ctx_shared.c b/tests/i915/gem_ctx_shared.c
> > index 18d8cc013d68..209377be1c84 100644
> > --- a/tests/i915/gem_ctx_shared.c
> > +++ b/tests/i915/gem_ctx_shared.c
> > @@ -327,7 +327,7 @@ static void exec_shared_gtt(int i915, const intel_ctx_cfg_t *cfg,
> > obj.handle = batch;
> > obj.offset += 8192; /* make sure we don't cause an eviction! */
> > execbuf.rsvd1 = ctx[1]->id;
> > - if (gen > 3 && gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > gem_execbuf(i915, &execbuf);
> >
> > @@ -528,7 +528,7 @@ static void store_dword(int i915, uint64_t ahnd, const intel_ctx_t *ctx,
> > execbuf.buffers_ptr = to_user_pointer(obj + !cork);
> > execbuf.buffer_count = 2 + !!cork;
> > execbuf.flags = ring;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > diff --git a/tests/i915/gem_exec_async.c b/tests/i915/gem_exec_async.c
> > index d50fe45ec57c..0d4efd736d71 100644
> > --- a/tests/i915/gem_exec_async.c
> > +++ b/tests/i915/gem_exec_async.c
> > @@ -44,7 +44,7 @@ static void store_dword(int fd, int id, const intel_ctx_t *ctx,
> > execbuf.buffers_ptr = to_user_pointer(obj);
> > execbuf.buffer_count = 2;
> > execbuf.flags = ring;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > diff --git a/tests/i915/gem_exec_capture.c b/tests/i915/gem_exec_capture.c
> > index 2db58266fd4e..9ecf2b546da0 100644
> > --- a/tests/i915/gem_exec_capture.c
> > +++ b/tests/i915/gem_exec_capture.c
> > @@ -346,7 +346,7 @@ static void __capture1(int fd, int dir, uint64_t ahnd, const intel_ctx_t *ctx,
> > execbuf.buffers_ptr = (uintptr_t)obj;
> > execbuf.buffer_count = ARRAY_SIZE(obj);
> > execbuf.flags = e->flags;
> > - if (gen > 3 && gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.flags |= I915_EXEC_FENCE_OUT;
> > execbuf.rsvd1 = ctx->id;
> > @@ -536,7 +536,7 @@ __captureN(int fd, int dir, uint64_t ahnd, const intel_ctx_t *ctx,
> > execbuf.buffers_ptr = (uintptr_t)obj;
> > execbuf.buffer_count = count + 2;
> > execbuf.flags = e->flags;
> > - if (gen > 3 && gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.flags |= I915_EXEC_FENCE_OUT;
> > execbuf.rsvd1 = ctx->id;
> > diff --git a/tests/i915/gem_exec_fence.c b/tests/i915/gem_exec_fence.c
> > index 6bf1cdb57741..b713cb16d790 100644
> > --- a/tests/i915/gem_exec_fence.c
> > +++ b/tests/i915/gem_exec_fence.c
> > @@ -622,7 +622,7 @@ static void test_parallel(int i915, const intel_ctx_t *ctx,
> > batch[++i] = MI_BATCH_BUFFER_END;
> > gem_write(i915, obj[1].handle, 0, batch, sizeof(batch));
> >
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> >
> > gem_execbuf(i915, &execbuf);
> > @@ -745,7 +745,7 @@ static void test_concurrent(int i915, const intel_ctx_t *ctx,
> > tmp_ctx = intel_ctx_create(i915, &ctx->cfg);
> > execbuf.rsvd1 = tmp_ctx->id;
> > execbuf.rsvd2 = spin->out_fence;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> >
> > gem_execbuf(i915, &execbuf);
> > diff --git a/tests/i915/gem_exec_flush.c b/tests/i915/gem_exec_flush.c
> > index 40c58db2bb7d..b41eafcd07c5 100644
> > --- a/tests/i915/gem_exec_flush.c
> > +++ b/tests/i915/gem_exec_flush.c
> > @@ -168,7 +168,7 @@ static void run(int fd, unsigned ring, int nchild, int timeout,
> > execbuf.buffers_ptr = to_user_pointer(obj);
> > execbuf.buffer_count = 3;
> > execbuf.flags = ring | (1 << 12);
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> >
> > obj[1].handle = gem_create(fd, 1024*64);
> > @@ -414,7 +414,7 @@ static void batch(int fd, unsigned ring, int nchild, int timeout,
> > execbuf.buffers_ptr = to_user_pointer(obj);
> > execbuf.buffer_count = 2;
> > execbuf.flags = ring | (1 << 12);
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> >
> > obj[1].handle = gem_create(fd, 64<<10);
> > diff --git a/tests/i915/gem_exec_gttfill.c b/tests/i915/gem_exec_gttfill.c
> > index 137277fe5313..d647f544e446 100644
> > --- a/tests/i915/gem_exec_gttfill.c
> > +++ b/tests/i915/gem_exec_gttfill.c
> > @@ -166,7 +166,7 @@ static void fillgtt(int fd, const intel_ctx_t *ctx, unsigned ring, int timeout)
> >
> > memset(&execbuf, 0, sizeof(execbuf));
> > execbuf.buffer_count = 1;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > diff --git a/tests/i915/gem_exec_nop.c b/tests/i915/gem_exec_nop.c
> > index f35cc8401f91..f11a1dd92679 100644
> > --- a/tests/i915/gem_exec_nop.c
> > +++ b/tests/i915/gem_exec_nop.c
> > @@ -120,7 +120,7 @@ static void poll_ring(int fd, const intel_ctx_t *ctx,
> > uint64_t elapsed;
> >
> > flags = I915_EXEC_NO_RELOC;
> > - if (gen == 4 || gen == 5)
> > + if (gem_store_dword_needs_secure(gen))
> > flags |= I915_EXEC_SECURE;
> >
> > igt_require(gem_class_can_store_dword(fd, e->class));
> > @@ -234,7 +234,7 @@ static void poll_sequential(int fd, const intel_ctx_t *ctx,
> > bool cached;
> >
> > flags = I915_EXEC_NO_RELOC;
> > - if (gen == 4 || gen == 5)
> > + if (gem_store_dword_needs_secure(gen))
> > flags |= I915_EXEC_SECURE;
> >
> > nengine = 0;
> > diff --git a/tests/i915/gem_exec_parallel.c b/tests/i915/gem_exec_parallel.c
> > index 429620884b1f..7676244568a7 100644
> > --- a/tests/i915/gem_exec_parallel.c
> > +++ b/tests/i915/gem_exec_parallel.c
> > @@ -127,7 +127,7 @@ static void *thread(void *data)
> > execbuf.flags = t->engine;
> > execbuf.flags |= I915_EXEC_HANDLE_LUT;
> > execbuf.flags |= I915_EXEC_NO_RELOC;
> > - if (t->gen < 6)
> > + if (t->gen == 4 || t->gen == 5)
> > execbuf.flags |= I915_EXEC_SECURE;
> > if (t->flags & (CONTEXTS | FDS)) {
> > tmp_ctx = intel_ctx_create(fd, &t->ctx->cfg);
> > diff --git a/tests/i915/gem_exec_params.c b/tests/i915/gem_exec_params.c
> > index 618635ec38fb..909c6b7daf44 100644
> > --- a/tests/i915/gem_exec_params.c
> > +++ b/tests/i915/gem_exec_params.c
> > @@ -171,7 +171,7 @@ static void test_batch_first(int fd)
> > memset(&execbuf, 0, sizeof(execbuf));
> > execbuf.buffers_ptr = to_user_pointer(obj);
> > execbuf.buffer_count = ARRAY_SIZE(obj);
> > - if (gen > 3 && gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> >
> > /* Normal mode */
> > diff --git a/tests/i915/gem_exec_reloc.c b/tests/i915/gem_exec_reloc.c
> > index 7a354a32a1a0..eefc10f1f136 100644
> > --- a/tests/i915/gem_exec_reloc.c
> > +++ b/tests/i915/gem_exec_reloc.c
> > @@ -307,7 +307,7 @@ static void active(int fd, const intel_ctx_t *ctx, unsigned engine)
> > memset(&execbuf, 0, sizeof(execbuf));
> > execbuf.buffers_ptr = to_user_pointer(obj);
> > execbuf.buffer_count = 2;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > @@ -732,7 +732,7 @@ static void concurrent_child(int i915, const intel_ctx_t *ctx,
> > struct drm_i915_gem_execbuffer2 execbuf = {
> > .buffers_ptr = to_user_pointer(obj),
> > .buffer_count = ARRAY_SIZE(obj),
> > - .flags = e->flags | I915_EXEC_HANDLE_LUT | (gen < 6 ? I915_EXEC_SECURE : 0),
> > + .flags = e->flags | I915_EXEC_HANDLE_LUT,
> > .rsvd1 = ctx->id,
> > };
> > uint32_t *batch = &obj[num_common + 1].handle;
> > @@ -740,6 +740,9 @@ static void concurrent_child(int i915, const intel_ctx_t *ctx,
> > uint32_t *x;
> > int err = 0;
> >
> > + if (gem_store_dword_needs_secure(gen))
> > + execbuf.flags |= I915_EXEC_SECURE;
> > +
> > memset(obj, 0, sizeof(obj));
> > obj[0].handle = gem_create(i915, 64 * CONCURRENT * 4);
> >
> > diff --git a/tests/i915/gem_exec_schedule.c b/tests/i915/gem_exec_schedule.c
> > index 58b118c79ea1..2fdc1ea0e786 100644
> > --- a/tests/i915/gem_exec_schedule.c
> > +++ b/tests/i915/gem_exec_schedule.c
> > @@ -108,7 +108,7 @@ static uint32_t __store_dword(int fd, uint64_t ahnd, const intel_ctx_t *ctx,
> > execbuf.buffers_ptr = to_user_pointer(obj + !cork);
> > execbuf.buffer_count = 2 + !!cork;
> > execbuf.flags = ring;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > @@ -2257,7 +2257,7 @@ static void reorder_wide(int fd, const intel_ctx_cfg_t *cfg, unsigned ring)
> > execbuf.buffers_ptr = to_user_pointer(obj);
> > execbuf.buffer_count = ARRAY_SIZE(obj);
> > execbuf.flags = ring;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> >
> > execbuf.flags |= I915_EXEC_FENCE_IN;
> > diff --git a/tests/i915/gem_exec_store.c b/tests/i915/gem_exec_store.c
> > index efb9907ebb2a..ec4f0bc9338e 100644
> > --- a/tests/i915/gem_exec_store.c
> > +++ b/tests/i915/gem_exec_store.c
> > @@ -58,7 +58,7 @@ static void store_dword(int fd, const intel_ctx_t *ctx,
> > execbuf.buffers_ptr = to_user_pointer(obj);
> > execbuf.buffer_count = 2;
> > execbuf.flags = e->flags;
> > - if (gen > 3 && gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > @@ -143,7 +143,7 @@ static void store_cachelines(int fd, const intel_ctx_t *ctx,
> > memset(&execbuf, 0, sizeof(execbuf));
> > execbuf.buffer_count = flags & PAGES ? NCACHELINES + 1 : 2;
> > execbuf.flags = e->flags;
> > - if (gen > 3 && gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > @@ -255,7 +255,7 @@ static void store_all(int fd, const intel_ctx_t *ctx)
> > memset(&execbuf, 0, sizeof(execbuf));
> > execbuf.buffers_ptr = to_user_pointer(obj);
> > execbuf.buffer_count = 2;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > diff --git a/tests/i915/gem_exec_suspend.c b/tests/i915/gem_exec_suspend.c
> > index 3b59966a11d1..e14df2ad1509 100644
> > --- a/tests/i915/gem_exec_suspend.c
> > +++ b/tests/i915/gem_exec_suspend.c
> > @@ -110,7 +110,7 @@ static void run_test(int fd, const intel_ctx_t *ctx,
> > execbuf.buffers_ptr = to_user_pointer(obj);
> > execbuf.buffer_count = 2;
> > execbuf.flags = 1 << 11;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > diff --git a/tests/i915/gem_exec_whisper.c b/tests/i915/gem_exec_whisper.c
> > index 616231aa9667..5a1a4fa9a074 100644
> > --- a/tests/i915/gem_exec_whisper.c
> > +++ b/tests/i915/gem_exec_whisper.c
> > @@ -297,7 +297,7 @@ static void whisper(int fd, const intel_ctx_t *ctx,
> > execbuf.buffer_count = 2;
> > execbuf.flags = I915_EXEC_HANDLE_LUT;
> > execbuf.flags |= I915_EXEC_NO_RELOC;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> >
> > execbuf.rsvd1 = ctx->id;
> > diff --git a/tests/i915/gem_ringfill.c b/tests/i915/gem_ringfill.c
> > index 8ab00525ff28..50d0c6179db1 100644
> > --- a/tests/i915/gem_ringfill.c
> > +++ b/tests/i915/gem_ringfill.c
> > @@ -116,7 +116,7 @@ static void setup_execbuf(int fd, const intel_ctx_t *ctx,
> > execbuf->buffers_ptr = to_user_pointer(obj);
> > execbuf->flags = ring | I915_EXEC_NO_RELOC | I915_EXEC_HANDLE_LUT;
> >
> > - if (gen > 3 && gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf->flags |= I915_EXEC_SECURE;
> >
> > execbuf->rsvd1 = ctx->id;
> > diff --git a/tests/i915/gem_softpin.c b/tests/i915/gem_softpin.c
> > index ad6d3f531c5f..f90526bffc92 100644
> > --- a/tests/i915/gem_softpin.c
> > +++ b/tests/i915/gem_softpin.c
> > @@ -631,7 +631,7 @@ static void test_noreloc(int fd, enum sleep sleep, unsigned flags)
> > memset(&execbuf, 0, sizeof(execbuf));
> > execbuf.buffers_ptr = to_user_pointer(object);
> > execbuf.buffer_count = 1;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > gem_execbuf(fd, &execbuf);
> > gem_close(fd, object[0].handle);
> > @@ -1004,7 +1004,7 @@ static void test_allocator_evict(int fd, const intel_ctx_t *ctx,
> >
> > memset(&execbuf, 0, sizeof(execbuf));
> > execbuf.buffer_count = 1;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > diff --git a/tests/i915/gem_sync.c b/tests/i915/gem_sync.c
> > index 07cabf7abcd0..e04038c55c53 100644
> > --- a/tests/i915/gem_sync.c
> > +++ b/tests/i915/gem_sync.c
> > @@ -554,7 +554,7 @@ store_ring(int fd, const intel_ctx_t *ctx, unsigned ring,
> > execbuf.flags = ied_flags(&ied, child);
> > execbuf.flags |= I915_EXEC_NO_RELOC;
> > execbuf.flags |= I915_EXEC_HANDLE_LUT;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > @@ -663,7 +663,7 @@ switch_ring(int fd, const intel_ctx_t *ctx, unsigned ring,
> > c->execbuf.flags = ied_flags(&ied, child);
> > c->execbuf.flags |= I915_EXEC_NO_RELOC;
> > c->execbuf.flags |= I915_EXEC_HANDLE_LUT;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > c->execbuf.flags |= I915_EXEC_SECURE;
> >
> > c->ctx = intel_ctx_create(fd, &ctx->cfg);
> > @@ -831,7 +831,7 @@ __store_many(int fd, const intel_ctx_t *ctx, unsigned ring,
> > execbuf.flags = ring;
> > execbuf.flags |= I915_EXEC_NO_RELOC;
> > execbuf.flags |= I915_EXEC_HANDLE_LUT;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > @@ -1046,7 +1046,7 @@ store_all(int fd, const intel_ctx_t *ctx, int num_children, int timeout)
> > execbuf.buffers_ptr = to_user_pointer(object);
> > execbuf.flags |= I915_EXEC_NO_RELOC;
> > execbuf.flags |= I915_EXEC_HANDLE_LUT;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > diff --git a/tests/i915/gem_userptr_blits.c b/tests/i915/gem_userptr_blits.c
> > index 6985086694c4..83048ab3fe6e 100644
> > --- a/tests/i915/gem_userptr_blits.c
> > +++ b/tests/i915/gem_userptr_blits.c
> > @@ -285,7 +285,7 @@ static void store_dword(int fd, uint32_t target,
> > execbuf.buffers_ptr = to_user_pointer(obj);
> > execbuf.buffer_count = ARRAY_SIZE(obj);
> > execbuf.flags = 0;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> >
> > memset(obj, 0, sizeof(obj));
> > @@ -1266,7 +1266,7 @@ static void store_dword_rand(int i915, const intel_ctx_t *ctx,
> > exec.buffer_count = 2;
> > exec.buffers_ptr = to_user_pointer(obj);
> > exec.flags = engine;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > exec.flags |= I915_EXEC_SECURE;
> > exec.rsvd1 = ctx->id;
> >
> > diff --git a/tests/i915/i915_module_load.c b/tests/i915/i915_module_load.c
> > index d3a86b113317..a3300c0d7ff2 100644
> > --- a/tests/i915/i915_module_load.c
> > +++ b/tests/i915/i915_module_load.c
> > @@ -128,7 +128,7 @@ static void store_all(int i915)
> > batch[value] = nengine;
> >
> > execbuf.flags = e->flags;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.flags |= I915_EXEC_NO_RELOC | I915_EXEC_HANDLE_LUT;
> > execbuf.rsvd1 = ctx->id;
> > diff --git a/tests/prime_vgem.c b/tests/prime_vgem.c
> > index 06be273c0b6f..36a10b177517 100644
> > --- a/tests/prime_vgem.c
> > +++ b/tests/prime_vgem.c
> > @@ -593,7 +593,7 @@ static void work(int i915, uint64_t ahnd, uint64_t scratch_offset, int dmabuf,
> > execbuf.buffers_ptr = (uintptr_t)obj;
> > execbuf.buffer_count = 2;
> > execbuf.flags = ring;
> > - if (gen < 6)
> > + if (gem_store_dword_needs_secure(gen))
> > execbuf.flags |= I915_EXEC_SECURE;
> > execbuf.rsvd1 = ctx->id;
> >
> > --
> > 2.39.1
> >
--
Ville Syrjälä
Intel
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2023-01-30 17:29 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-27 19:22 [igt-dev] [PATCH i-g-t 1/2] intel: Unify STORE_DWORD gen checks Ville Syrjala
2023-01-27 19:22 ` [igt-dev] [PATCH i-g-t 2/2] Silence compiler warnings on 32bit Ville Syrjala
2023-01-27 20:27 ` [igt-dev] ✗ Fi.CI.BAT: failure for series starting with [i-g-t,1/2] intel: Unify STORE_DWORD gen checks Patchwork
2023-01-27 23:21 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] intel: Unify STORE_DWORD gen checks (rev2) Patchwork
2023-01-28 5:34 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2023-01-30 17:24 ` [igt-dev] [PATCH i-g-t 1/2] intel: Unify STORE_DWORD gen checks Kamil Konieczny
2023-01-30 17:29 ` Ville Syrjälä
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.