Fixes for i915_hangman, gem_exec_capture and gem_exec_fence
Subsystems (2)
v5 cover Fixes for i915_hangman, gem_exec_capture and gem_exec_fence
From: John Harrison <[email protected]>
Fix a bunch of issues with i915_hangman and gem_exec_capture with the ultimate aim of making them pass on GuC enabled platforms.
v2: Fixes to the store code. Add engine properties management.
v3: Fix for platforms without pre-emption.
v4: Simplify anti-ban code, support >32bit store offsets and fix memory mapping on discrete platforms.
v5: Fix for failure on 'pi' test. Update patch set subject.
John Harrison (15):
tests/i915/i915_hangman: Add descriptions
lib/hang: Fix igt_require_hang_ring to work with all engines tests/i915/i915_hangman: Update capture test to use engine structure tests/i915/i915_hangman: Explicitly test per engine reset vs full GPU
reset
tests/i915/i915_hangman: Add uevent test & fix detector tests/i915/i915_hangman: Use the correct context in
hangcheck_unterminated
lib/store: Refactor common store code into helper function tests/i915/i915_hangman: Add alive-ness test after error capture tests/i915/i915_hangman: Remove reliance on context persistance tests/i915/i915_hangman: Run background task on all engines tests/i915/i915_hangman: Don't let background contexts cause a ban tests/i915/gem_exec_fence: Configure correct context lib/i915: Add helper for non-destructive engine property updates tests/i915/i915_hangman: Configure engine properties for quicker hangs tests/i915/gem_exec_capture: Restore engines
lib/i915/gem_engine_topology.c | 46 ++++++ lib/i915/gem_engine_topology.h | 9 ++ lib/igt_aux.c | 7 + lib/igt_gt.c | 6 +- lib/igt_gt.h | 2 +- lib/igt_store.c | 100 +++++++++++++ lib/igt_store.h | 12 ++ lib/meson.build | 1 + tests/i915/gem_exec_capture.c | 42 ++++-- tests/i915/gem_exec_fence.c | 79 +---------- tests/i915/i915_hangman.c | 252 +++++++++++++++++++++++++++------ 11 files changed, 428 insertions(+), 128 deletions(-) create mode 100644 lib/igt_store.c create mode 100644 lib/igt_store.h
Signature · 1 line
2.25.1
PATCH v5 1/15 tests/i915/i915_hangman: Add descriptions
From: John Harrison <[email protected]>
Added descriptions of the various sub-tests and the test as a whole.
v2: Added missing linefeed (spotted by Petri)
--- tests/i915/i915_hangman.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)
tests/i915/i915_hangman.c +9 -2
@@ -46,6 +46,8 @@static int device =-1 ;static int sysfs =-1 ; +IGT_TEST_DESCRIPTION ("Tests for hang detection and recovery" ); +static bool has_error_state (int dir) {bool result;
@@ -315,9 +317,9 @@ static void hangcheck_unterminated(void)gem_execbuf (device, &execbuf);if (gem_wait (device, handle, &timeout_ns) !=0 ) { -/* need to manually trigger an hang to clean before failing */ +/* need to manually trigger a hang to clean before failing */ igt_force_gpu_reset (device); -igt_assert_f (0 ,"unterminated batch did not trigger an hang!" ); +igt_assert_f (0 ,"unterminated batch did not trigger a hang!\n" ); } }
@@ -341,9 +343,11 @@ igt_mainigt_require (has_error_state (sysfs)); } +igt_describe ("Basic error capture" ); igt_subtest("error-state-basic")test_error_state_basic (); +igt_describe ("Per engine error capture" ); igt_subtest_with_dynamic("error-state-capture") {for_each_ctx_engine (device, ctx, e) {igt_dynamic_f ("%s" , e->name)
@@ -351,6 +355,7 @@ igt_main } } +igt_describe ("Per engine hang recovery (spin)" ); igt_subtest_with_dynamic("engine-hang") {int has_gpu_reset =0 ;struct drm_i915_getparam gp = {
@@ -369,6 +374,7 @@ igt_main } } +igt_describe ("Per engine hang recovery (invalid CS)" ); igt_subtest_with_dynamic("engine-error") {int has_gpu_reset =0 ;struct drm_i915_getparam gp = {
@@ -386,6 +392,7 @@ igt_main } } +igt_describe ("Check that executing unintialised memory causes a hang" ); igt_subtest("hangcheck-unterminated")hangcheck_unterminated ();
Signature · 1 line
2.25.1
PATCH v5 2/15 lib/hang: Fix igt_require_hang_ring to work with all engines
In reply to [email protected]From: John Harrison <[email protected]>
The above function was checking for valid rings via the old interface. The new scheme is to check for engines on contexts as there are now more engines than could be supported.
--- lib/igt_gt.c | 6 +++--- lib/igt_gt.h | 2 +- tests/i915/i915_hangman.c | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-)
lib/igt_gt.c +3 -3
@@ -122,12 +122,12 @@ static void eat_error_state(int dev)* to be done under hang injection. * Default: false */ -void igt_require_hang_ring (int fd,int ring) +void igt_require_hang_ring (int fd,uint32_t ctx,int ring) {if (!igt_check_boolean_env_var ("IGT_HANG" , true))igt_skip ("hang injection disabled by user [IGT_HANG=0]\n" ); -gem_require_ring (fd, ring); +igt_require (gem_context_has_engine (fd, ctx, ring));gem_context_require_bannable (fd);if (!igt_check_boolean_env_var ("IGT_HANG_WITHOUT_RESET" , false))igt_require (has_gpu_reset (fd));
@@ -290,7 +290,7 @@ static igt_hang_t __igt_hang_ctx(int fd, uint64_t ahnd, uint32_t ctx, int ring,igt_spin_t *spin;unsigned ban; -igt_require_hang_ring (fd, ring); +igt_require_hang_ring (fd, ctx, ring);/* check if non-default ctx submission is allowed */ igt_require (ctx ==0 ||has_ctx_exec (fd, ring, ctx));
lib/igt_gt.h +1 -1
@@ -31,7 +31,7 @@#include "i915/i915_drm_local.h" #include "i915_drm.h" -void igt_require_hang_ring (int fd,int ring); +void igt_require_hang_ring (int fd,uint32_t ctx,int ring); typedef struct igt_hang { igt_spin_t *spin;
tests/i915/i915_hangman.c +3 -3
@@ -295,7 +295,7 @@ test_engine_hang(const intel_ctx_t *ctx,* case and it takes a lot more time to wrap, so the acthd can potentially keep * increasing for a long time */ -static void hangcheck_unterminated (void ) +static void hangcheck_unterminated (const intel_ctx_t *ctx) {/* timeout needs to be greater than ~5*hangcheck */ int64_t timeout_ns =100ull *NSEC_PER_SEC ;/* 100 seconds */
@@ -304,7 +304,7 @@ static void hangcheck_unterminated(void)uint32_t handle;igt_require (gem_uses_full_ppgtt (device)); -igt_require_hang_ring (device,0 ); +igt_require_hang_ring (device, ctx->id,0 ); handle =gem_create (device,4096 );
@@ -394,7 +394,7 @@ igt_mainigt_describe ("Check that executing unintialised memory causes a hang" ); igt_subtest("hangcheck-unterminated") -hangcheck_unterminated (); +hangcheck_unterminated (ctx); igt_fixture {igt_disallow_hang (device, hang);
Signature · 1 line
2.25.1
PATCH v5 3/15 tests/i915/i915_hangman: Update capture test to use engine structure
In reply to [email protected]From: John Harrison <[email protected]>
The capture test was still using old style ring_id and ring_name (derived from the engine structure at the higher level). Update it to just take the engine structure directly.
--- tests/i915/i915_hangman.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)
tests/i915/i915_hangman.c +5 -5
@@ -207,8 +207,8 @@ static void check_error_state(const char *expected_ring_name,igt_assert (found); } -static void test_error_state_capture (const intel_ctx_t *ctx,unsigned ring_id, -const char *ring_name) +static void test_error_state_capture (const intel_ctx_t *ctx, +const struct intel_execution_engine2 *e) {uint32_t *batch;igt_hang_t hang;
@@ -217,7 +217,7 @@ static void test_error_state_capture(const intel_ctx_t *ctx, unsigned ring_id,clear_error_state (); - hang =igt_hang_ctx_with_ahnd (device, ahnd, ctx->id, ring_id, + hang =igt_hang_ctx_with_ahnd (device, ahnd, ctx->id, e->flags,HANG_ALLOW_CAPTURE ); offset = hang.spin->obj[IGT_SPIN_BATCH ].offset;
@@ -226,7 +226,7 @@ static void test_error_state_capture(const intel_ctx_t *ctx, unsigned ring_id,igt_post_hang_ring (device, hang); -check_error_state (ring_name, offset, batch); +check_error_state (e->name, offset, batch);munmap (batch,4096 );put_ahnd (ahnd); }
@@ -351,7 +351,7 @@ igt_main igt_subtest_with_dynamic("error-state-capture") {for_each_ctx_engine (device, ctx, e) { igt_dynamic_f("%s", e->name) -test_error_state_capture (ctx, e->flags, e->name); +test_error_state_capture (ctx, e); } }
Signature · 1 line
2.25.1
PATCH v5 4/15 tests/i915/i915_hangman: Explicitly test per engine reset vs full GPU reset
In reply to [email protected]From: John Harrison <[email protected]>
Although the hangman test was ensuring that *some* reset functionality was enabled, it did not differentiate what kind. The infrastructure required to choose between per engine reset or full GT reset was recently added. So update this test to use it as well.
--- tests/i915/i915_hangman.c | 76 +++++++++++++++++++++++++-------------- 1 file changed, 49 insertions(+), 27 deletions(-)
tests/i915/i915_hangman.c +49 -27
@@ -323,40 +323,26 @@ static void hangcheck_unterminated(const intel_ctx_t *ctx) } } -igt_main +static void do_tests (const char *name,const char *prefix, +const intel_ctx_t *ctx) {const struct intel_execution_engine2 *e; -const intel_ctx_t *ctx; -igt_hang_t hang = {}; - - igt_fixture { - device =drm_open_driver (DRIVER_INTEL ); -igt_require_gem (device); - - ctx =intel_ctx_create_all_physical (device); - - hang =igt_allow_hang (device, ctx->id,HANG_ALLOW_CAPTURE ); - - sysfs =igt_sysfs_open (device); -igt_assert (sysfs !=-1 ); - -igt_require (has_error_state (sysfs)); - } +char buff[256 ]; -igt_describe ("Basic error capture" ); - igt_subtest("error-state-basic") -test_error_state_basic (); - -igt_describe ("Per engine error capture" ); - igt_subtest_with_dynamic("error-state-capture") { +snprintf (buff,sizeof (buff),"Per engine error capture (%s reset)" , name); +igt_describe (buff); +snprintf (buff,sizeof (buff),"%s-error-state-capture" , prefix); +igt_subtest_with_dynamic (buff) {for_each_ctx_engine (device, ctx, e) { igt_dynamic_f("%s", e->name)test_error_state_capture (ctx, e); } } -igt_describe ("Per engine hang recovery (spin)" ); - igt_subtest_with_dynamic("engine-hang") { +snprintf (buff,sizeof (buff),"Per engine hang recovery (spin, %s reset)" , name); +igt_describe (buff); +snprintf (buff,sizeof (buff),"%s-engine-hang" , prefix); +igt_subtest_with_dynamic (buff) {int has_gpu_reset =0 ;struct drm_i915_getparam gp = { .param = I915_PARAM_HAS_GPU_RESET,
@@ -374,8 +360,10 @@ igt_main } } -igt_describe ("Per engine hang recovery (invalid CS)" ); - igt_subtest_with_dynamic("engine-error") { +snprintf (buff,sizeof (buff),"Per engine hang recovery (invalid CS, %s reset)" , name); +igt_describe (buff); +snprintf (buff,sizeof (buff),"%s-engine-error" , prefix); +igt_subtest_with_dynamic (buff) {int has_gpu_reset =0 ;struct drm_i915_getparam gp = { .param =I915_PARAM_HAS_GPU_RESET ,
@@ -391,11 +379,45 @@ igt_maintest_engine_hang (ctx, e,IGT_SPIN_INVALID_CS ); } } +} + +igt_main +{ +const intel_ctx_t *ctx; +igt_hang_t hang = {}; + + igt_fixture { + device =drm_open_driver (DRIVER_INTEL ); +igt_require_gem (device); + + ctx =intel_ctx_create_all_physical (device); + + hang =igt_allow_hang (device, ctx->id,HANG_ALLOW_CAPTURE ); + + sysfs =igt_sysfs_open (device); +igt_assert (sysfs !=-1 ); + +igt_require (has_error_state (sysfs)); + } + +igt_describe ("Basic error capture" ); + igt_subtest("error-state-basic") +test_error_state_basic ();igt_describe ("Check that executing unintialised memory causes a hang" ); igt_subtest("hangcheck-unterminated")hangcheck_unterminated (ctx); +do_tests ("GT" ,"gt" , ctx); + + igt_fixture { +igt_disallow_hang (device ,hang ); + + hang =igt_allow_hang (device, ctx->id,HANG_ALLOW_CAPTURE |HANG_WANT_ENGINE_RESET ); + } + +do_tests ("engine" ,"engine" , ctx); + igt_fixture {igt_disallow_hang (device, hang);intel_ctx_destroy (device, ctx);
Signature · 1 line
2.25.1
PATCH v5 5/15 tests/i915/i915_hangman: Add uevent test & fix detector
In reply to [email protected]From: John Harrison <[email protected]>
Some of the IGT framework relies on receving a uevent when a hang occurs. So add a test that this actually works.
While testing this, noticed that hangs could sometimes be missed because the uevent was (presumably) still in flight by the time the handler was de-registered. So add an extra delay during cleanup to give the uevent chance to arrive.
--- lib/igt_aux.c | 7 +++++++ tests/i915/i915_hangman.c | 43 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+)
lib/igt_aux.c +7 -0
@@ -523,6 +523,13 @@ void igt_fork_hang_detector(int fd)void igt_stop_hang_detector (void ) { +/* +* Give the uevent time to arrive. No sleep at all misses about 20% of +* hangs (at least, in the i915_hangman/detector test). A sleep of 1ms +* seems to miss about 2%, 10ms loses <1%, so 100ms should be safe. +*/ +usleep (100 *1000 ); +igt_stop_helper (&hang_detector); }
tests/i915/i915_hangman.c +43 -0
61 lines not on this page · raw message
Signature · 1 line
2.25.1
PATCH v5 6/15 tests/i915/i915_hangman: Use the correct context in hangcheck_unterminated
In reply to [email protected]From: John Harrison <[email protected]>
The hangman framework sets up a context that is valid for all engines and has things like banning disabled. The 'unterminated' test then ignores it and uses the default context. Fix that.
--- tests/i915/i915_hangman.c | 1 + 1 file changed, 1 insertion(+)
tests/i915/i915_hangman.c +1 -0
@@ -347,6 +347,7 @@ static void hangcheck_unterminated(const intel_ctx_t *ctx)memset (&execbuf,0 ,sizeof (execbuf)); execbuf.buffers_ptr = (uintptr_t )&gem_exec; execbuf.buffer_count =1 ; + execbuf.rsvd1 = ctx->id;gem_execbuf (device, &execbuf);if (gem_wait (device, handle, &timeout_ns) !=0 ) {
Signature · 1 line
2.25.1
PATCH v5 7/15 lib/store: Refactor common store code into helper function
In reply to [email protected]From: John Harrison <[email protected]>
A lot of tests use almost identical code for creating a batch buffer which does a single write to memory and another is about to be added. Instead, move the most generic version into a common helper function. Unfortunately, the other instances are all subtly different enough to make it not so trivial to try to use the helper. It could be done but it is unclear if it is worth the effort at this point. This patch proves the concept, if people like it enough then it can be extended.
v2: Fix up object address vs store offset confusion (with help from Zbigniew K).
v3: Cope with >32bit store_offset (review feedback from Matthew Brost).
--- lib/igt_store.c | 100 ++++++++++++++++++++++++++++++++++++ lib/igt_store.h | 12 +++++ lib/meson.build | 1 + tests/i915/gem_exec_fence.c | 77 ++------------------------- tests/i915/i915_hangman.c | 1 + 5 files changed, 119 insertions(+), 72 deletions(-) create mode 100644 lib/igt_store.c create mode 100644 lib/igt_store.h
lib/igt_store.c new file +100 -0
@@ -0,0 +1,100 @@ +/* SPDX-License-Identifier: MIT */ +/* +* Copyright © 2021 Intel Corporation +*/ + +#include "i915/gem_create.h" +#include "igt_core.h" +#include "drmtest.h" +#include "igt_store.h" +#include "intel_chipset.h" +#include "intel_reg.h" +#include "ioctl_wrappers.h" +#include "lib/intel_allocator.h" + +/** +* SECTION:igt_store_word +* @short_description: Library for writing a value to memory +* @title: StoreWord +* @include: igt.h +* +* A lot of igt testcases need some mechanism for writing a value to memory +* as a test that a batch buffer has executed. +* +* NB: Requires master for STORE_DWORD on gen4/5. +*/ +void igt_store_word (int fd,uint64_t ahnd,const intel_ctx_t *ctx, +const struct intel_execution_engine2 *e, +int fence,uint32_t target_handle, +uint64_t target_gpu_addr, +uint64_t store_offset,uint32_t store_value) +{ +const int SCRATCH =0 ; +const int BATCH =1 ; +const unsigned int gen =intel_gen (intel_get_drm_devid (fd)); +struct drm_i915_gem_exec_object2 obj[2 ]; +struct drm_i915_gem_relocation_entry reloc; +struct drm_i915_gem_execbuffer2 execbuf; +uint32_t batch[16 ]; +uint64_t bb_offset, delta; +int i; + +memset (&execbuf,0 ,sizeof (execbuf)); + execbuf.buffers_ptr =to_user_pointer (obj); + execbuf.buffer_count =ARRAY_SIZE (obj); + execbuf.flags = e->flags; + execbuf.rsvd1 = ctx->id; +if (fence !=-1 ) { + execbuf.flags |=I915_EXEC_FENCE_IN ; + execbuf.rsvd2 = fence; + } +if (gen <6 ) + execbuf.flags |=I915_EXEC_SECURE ; + +memset (obj,0 ,sizeof (obj)); + obj[SCRATCH ].handle = target_handle; + + obj[BATCH ].handle =gem_create (fd,4096 ); + obj[BATCH ].relocs_ptr =to_user_pointer (&reloc); + obj[BATCH ].relocation_count = !ahnd ?1 :0 ; + bb_offset =get_offset (ahnd, obj[BATCH ].handle,4096 ,0 ); +memset (&reloc,0 ,sizeof (reloc)); + + i =0 ; + delta =sizeof (uint32_t ) * store_offset; +if (!ahnd) { + reloc.target_handle = obj[SCRATCH ].handle; + reloc.presumed_offset =-1 ; + reloc.offset =sizeof (uint32_t ) * (i +1 ); + reloc.delta =lower_32_bits (delta); +igt_assert_eq (upper_32_bits (delta),0 ); + reloc.read_domains =I915_GEM_DOMAIN_INSTRUCTION ; + reloc.write_domain =I915_GEM_DOMAIN_INSTRUCTION ; + }else { + obj[SCRATCH ].offset = target_gpu_addr; + obj[SCRATCH ].flags |=EXEC_OBJECT_PINNED |EXEC_OBJECT_WRITE ; + obj[BATCH ].offset = bb_offset; + obj[BATCH ].flags |=EXEC_OBJECT_PINNED ; + } + batch[i] =MI_STORE_DWORD_IMM | (gen <6 ?1 <<22 :0 ); +if (gen >=8 ) { +uint64_t addr = target_gpu_addr + delta; + batch[++i] =lower_32_bits (addr); + batch[++i] =upper_32_bits (addr); + }else if (gen >=4 ) { + batch[++i] =0 ; + batch[++i] =lower_32_bits (delta); +igt_assert_eq (upper_32_bits (delta),0 ); + reloc.offset +=sizeof (uint32_t ); + }else { + batch[i]--; + batch[++i] =lower_32_bits (delta); +igt_assert_eq (upper_32_bits (delta),0 ); + } + batch[++i] = store_value; + batch[++i] =MI_BATCH_BUFFER_END ; +gem_write (fd, obj[BATCH ].handle,0 , batch,sizeof (batch)); +gem_execbuf (fd, &execbuf); +gem_close (fd, obj[BATCH ].handle); +put_offset (ahnd, obj[BATCH ].handle); +}
lib/igt_store.h new file +12 -0
@@ -0,0 +1,12 @@ +/* SPDX-License-Identifier: MIT */ +/* +* Copyright © 2021 Intel Corporation +*/ + +#include "igt_gt.h" + +void igt_store_word (int fd,uint64_t ahnd,const intel_ctx_t *ctx, +const struct intel_execution_engine2 *e, +int fence,uint32_t target_handle, +uint64_t target_gpu_addr, +uint64_t store_offset,uint32_t store_value);
lib/meson.build +1 -0
@@ -72,6 +72,7 @@ lib_sources = [ 'igt_map.c', 'igt_pm.c', 'igt_dummyload.c', + 'igt_store.c', 'uwildmat/uwildmat.c', 'igt_kmod.c', 'igt_panfrost.c',
tests/i915/gem_exec_fence.c +5 -72
98 lines not on this page · raw message
tests/i915/i915_hangman.c +1 -0
@@ -36,6 +36,7 @@#include "i915/gem.h" #include "i915/gem_create.h" #include "igt.h" +#include "igt_store.h" #include "igt_sysfs.h" #include "igt_debugfs.h" #include "sw_sync.h"
Signature · 1 line
2.25.1
PATCH v5 8/15 tests/i915/i915_hangman: Add alive-ness test after error capture
In reply to [email protected]From: John Harrison <[email protected]>
Added a an extra step to the i915_hangman tests to check that the system is still alive after the hang and recovery. This submits a simple batch to each engine which does a write to memory and checks that the write occurred.
v2: Use _device_coherent instead of _wc for mapping memory to support discrete boards.
--- tests/i915/i915_hangman.c | 59 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+)
tests/i915/i915_hangman.c +59 -0
@@ -48,8 +48,57 @@static int device =-1 ;static int sysfs =-1 ; +#define OFFSET_ALIVE 10 +IGT_TEST_DESCRIPTION ("Tests for hang detection and recovery" ); +static void check_alive (void ) +{ +const struct intel_execution_engine2 *engine; +const intel_ctx_t *ctx; +uint32_t scratch, *out; +int fd, i =0 ; +uint64_t ahnd, scratch_addr; + + fd =drm_open_driver (DRIVER_INTEL ); +igt_require (gem_class_can_store_dword (fd,0 )); + + ctx =intel_ctx_create_all_physical (fd); + ahnd =get_reloc_ahnd (fd, ctx->id); + scratch =gem_create (fd,4096 ); + scratch_addr =get_offset (ahnd, scratch,4096 ,0 ); + out =gem_mmap__device_coherent (fd, scratch,0 ,4096 ,PROT_WRITE |PROT_READ ); +gem_set_domain (fd, scratch, +I915_GEM_DOMAIN_GTT ,I915_GEM_DOMAIN_GTT ); + +for_each_physical_engine (fd, engine) { +igt_assert_eq_u32 (out[i +OFFSET_ALIVE ],0 ); + i++; + } + + i =0 ; +for_each_ctx_engine (fd, ctx, engine) { +if (!gem_class_can_store_dword (fd, engine->class)) +continue ; + +/* +OFFSET_ALIVE to ensure engine zero doesn't get a false negative */ +igt_store_word (fd, ahnd, ctx, engine,-1 , scratch, scratch_addr, + i +OFFSET_ALIVE , i +OFFSET_ALIVE ); + i++; + } + +gem_set_domain (fd, scratch,I915_GEM_DOMAIN_GTT ,0 ); + +while (i--) +igt_assert_eq_u32 (out[i +OFFSET_ALIVE ], i +OFFSET_ALIVE ); + +munmap (out,4096 ); +gem_close (fd, scratch); +put_ahnd (ahnd); +intel_ctx_destroy (fd, ctx); +close (fd); +} +static bool has_error_state (int dir) {bool result;
@@ -231,6 +280,8 @@ static void test_error_state_capture(const intel_ctx_t *ctx,check_error_state (e->name, offset, batch);munmap (batch,4096 );put_ahnd (ahnd); + +check_alive (); } static void
@@ -289,6 +340,8 @@ test_engine_hang(const intel_ctx_t *ctx,put_ahnd (ahndN); }put_ahnd (ahnd); + +check_alive (); }static int hang_count;
@@ -321,6 +374,8 @@ static void test_hang_detector(const intel_ctx_t *ctx,/* Did it work? */ igt_assert (hang_count ==1 ); + +check_alive (); }/* This test covers the case where we end up in an uninitialised area of the
@@ -356,6 +411,8 @@ static void hangcheck_unterminated(const intel_ctx_t *ctx)igt_force_gpu_reset (device);igt_assert_f (0 ,"unterminated batch did not trigger a hang!\n" ); } + +check_alive (); } static void do_tests(const char *name, const char *prefix,
@@ -433,6 +490,8 @@ igt_mainigt_assert (sysfs !=-1 );igt_require (has_error_state (sysfs)); + +gem_require_mmap_device_coherent (device); }igt_describe ("Basic error capture" );
Signature · 1 line
2.25.1
PATCH v5 9/15 tests/i915/i915_hangman: Remove reliance on context persistance
In reply to [email protected]From: John Harrison <[email protected]>
The hang test was relying on context persitence for no particular reason. That is, it would set a bunch of background spinners running then immediately destroy the active contexts but expect the spinners to keep spinning. With the current implementation of context persistence in i915, that means that super high priority pings are sent to each engine at the start of the test. Depending upon the timing and platform, one of those unexpected pings could cause test failures.
There is no need to require context persitence in this test. So change to managing the contexts cleanly and only destroying them when they are no longer in use.
--- tests/i915/i915_hangman.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-)
tests/i915/i915_hangman.c +10 -5
@@ -289,27 +289,29 @@ test_engine_hang(const intel_ctx_t *ctx, const struct intel_execution_engine2 *e, unsigned int flags) {const struct intel_execution_engine2 *other; -const intel_ctx_t *tmp_ctx; +const intel_ctx_t *local_ctx[GEM_MAX_ENGINES ];igt_spin_t *spin, *next;IGT_LIST_HEAD (list);uint64_t ahnd =get_reloc_ahnd (device, ctx->id), ahndN; +int num_ctx;igt_skip_on (flags &IGT_SPIN_INVALID_CS &&gem_engine_has_cmdparser (device, &ctx->cfg, e->flags));/* Fill all the other engines with background load */ + num_ctx =0 ;for_each_ctx_engine (device, ctx, other) {if (other->flags == e->flags)continue ; - tmp_ctx =intel_ctx_create (device, &ctx->cfg); - ahndN =get_reloc_ahnd (device, tmp_ctx->id); + local_ctx[num_ctx] =intel_ctx_create (device, &ctx->cfg); + ahndN =get_reloc_ahnd (device, local_ctx[num_ctx]->id); spin = __igt_spin_new(device, .ahnd = ahndN, - .ctx = tmp_ctx, + .ctx = local_ctx[num_ctx], .engine = other->flags, .flags =IGT_SPIN_FENCE_OUT ); -intel_ctx_destroy (device, tmp_ctx); + num_ctx++;igt_list_move (&spin->link, &list); }
@@ -339,7 +341,10 @@ test_engine_hang(const intel_ctx_t *ctx,igt_spin_free (device, spin);put_ahnd (ahndN); } +put_ahnd (ahnd); +while (num_ctx) +intel_ctx_destroy (device, local_ctx[--num_ctx]);check_alive (); }
Signature · 1 line
2.25.1
PATCH v5 10/15 tests/i915/i915_hangman: Run background task on all engines
In reply to [email protected]From: John Harrison <[email protected]>
As opposed to only on the non-target engines. This means that there is some other workload present for the scheduler to switch between and so detet the hang immediately.
--- tests/i915/i915_hangman.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
tests/i915/i915_hangman.c +6 -4
@@ -298,12 +298,14 @@ test_engine_hang(const intel_ctx_t *ctx,igt_skip_on (flags &IGT_SPIN_INVALID_CS &&gem_engine_has_cmdparser (device, &ctx->cfg, e->flags)); -/* Fill all the other engines with background load */ +/* +* Fill all engines with background load. +* This verifies that independent engines are unaffected and gives +* the target engine something to switch between so it notices the +* hang. +*/ num_ctx =0 ;for_each_ctx_engine (device, ctx, other) { -if (other->flags == e->flags) -continue ; - local_ctx[num_ctx] =intel_ctx_create (device, &ctx->cfg); ahndN =get_reloc_ahnd (device, local_ctx[num_ctx]->id); spin = __igt_spin_new(device,
Signature · 1 line
2.25.1
PATCH v5 11/15 tests/i915/i915_hangman: Don't let background contexts cause a ban
In reply to [email protected]From: John Harrison <[email protected]>
The global context used by all the subtests for causing hangs is marked as unbannable. However, some of the subtests set background spinners running on all engines using a freshly created context. If there is a test failure for any reason, all of those spinners can be killed off as hanging contexts. On systems with lots of engines, that can result in the test being banned from creating any new contexts.
So make the spinner contexts unbannable as well. That way if one subtest fails it won't necessarily bring down all subsequent subtests.
v2: Simplify anti-banning code (review feedback from Matthew Brost).
--- tests/i915/i915_hangman.c | 12 ++++++++++++ 1 file changed, 12 insertions(+)
tests/i915/i915_hangman.c +12 -0
@@ -284,6 +284,17 @@ static void test_error_state_capture(const intel_ctx_t *ctx,check_alive (); } +static void context_unban (int fd,unsigned ctx) +{ +struct drm_i915_gem_context_param param = { + .ctx_id = ctx, + .param =I915_CONTEXT_PARAM_BANNABLE , + .value =0 , + }; + +gem_context_set_param (fd, ¶m); +} +static void test_engine_hang (const intel_ctx_t *ctx,const struct intel_execution_engine2 *e,unsigned int flags)
@@ -307,6 +318,7 @@ test_engine_hang(const intel_ctx_t *ctx, num_ctx =0 ;for_each_ctx_engine (device, ctx, other) { local_ctx[num_ctx] =intel_ctx_create (device, &ctx->cfg); +context_unban (device, local_ctx[num_ctx]->id); ahndN =get_reloc_ahnd (device, local_ctx[num_ctx]->id); spin = __igt_spin_new(device, .ahnd = ahndN,
Signature · 1 line
2.25.1
PATCH v5 12/15 tests/i915/gem_exec_fence: Configure correct context
In reply to [email protected]From: John Harrison <[email protected]>
The update to use intel_ctx_t missed a line that configures the context to allow hanging. Fix that.
--- tests/i915/gem_exec_fence.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
tests/i915/gem_exec_fence.c +1 -1
@@ -3139,7 +3139,7 @@ igt_mainigt_hang_t hang; igt_fixture { - hang =igt_allow_hang (i915,0 ,0 ); + hang =igt_allow_hang (i915, ctx->id,0 );intel_allocator_multiprocess_start (); }
Signature · 1 line
2.25.1
PATCH v5 13/15 lib/i915: Add helper for non-destructive engine property updates
In reply to [email protected]From: John Harrison <[email protected]>
Various tests want to configure engine properties such as pre-emption timeout and heartbeat interval. Some don't bother to restore the original values again afterwards. So, add a helper to make it easier to do this.
v2: Fix for platforms with no pre-emption capability.
--- lib/i915/gem_engine_topology.c | 46 ++++++++++++++++++++++++++++++++++ lib/i915/gem_engine_topology.h | 9 +++++++ 2 files changed, 55 insertions(+)
lib/i915/gem_engine_topology.c +46 -0
@@ -488,6 +488,52 @@ int gem_engine_property_printf(int i915, const char *engine, const char *attr,return ret; } +/* Ensure fast hang detection */ +void gem_engine_properties_configure (int fd,struct gem_engine_properties *params) +{ +int ret; +struct gem_engine_properties write = *params; + + ret =gem_engine_property_scanf (fd, write.engine->name, +"heartbeat_interval_ms" , +"%d" , ¶ms->heartbeat_interval); +igt_assert_eq (ret,1 ); + + ret =gem_engine_property_printf (fd, write.engine->name, +"heartbeat_interval_ms" ,"%d" , + write.heartbeat_interval); +igt_assert_lt (0 , ret); + +if (gem_scheduler_has_preemption (fd)) { + ret =gem_engine_property_scanf (fd, write.engine->name, +"preempt_timeout_ms" , +"%d" , ¶ms->preempt_timeout); +igt_assert_eq (ret,1 ); + + ret =gem_engine_property_printf (fd, write.engine->name, +"preempt_timeout_ms" ,"%d" , + write.preempt_timeout); +igt_assert_lt (0 , ret); + } +} + +void gem_engine_properties_restore (int fd,const struct gem_engine_properties *saved) +{ +int ret; + + ret =gem_engine_property_printf (fd, saved->engine->name, +"heartbeat_interval_ms" ,"%d" , + saved->heartbeat_interval); +igt_assert_lt (0 , ret); + +if (gem_scheduler_has_preemption (fd)) { + ret =gem_engine_property_printf (fd, saved->engine->name, +"preempt_timeout_ms" ,"%d" , + saved->preempt_timeout); +igt_assert_lt (0 , ret); + } +} +uint32_t gem_engine_mmio_base (int i915,const char *engine) {unsigned int mmio =0 ;
lib/i915/gem_engine_topology.h +9 -0
@@ -115,6 +115,15 @@ struct intel_execution_engine2 gem_eb_flags_to_engine(unsigned int flags); ((e__) = intel_get_current_physical_engine(&i__##e__)); \ intel_next_engine(&i__##e__)) +struct gem_engine_properties { +const struct intel_execution_engine2 *engine; +int preempt_timeout; +int heartbeat_interval; +}; + +void gem_engine_properties_configure (int fd,struct gem_engine_properties *params); +void gem_engine_properties_restore (int fd,const struct gem_engine_properties *saved); + __attribute__((format (scanf,4 ,5 )))int gem_engine_property_scanf (int i915,const char *engine,const char *attr,const char *fmt, ...);
Signature · 1 line
2.25.1
PATCH v5 14/15 tests/i915/i915_hangman: Configure engine properties for quicker hangs
In reply to [email protected]From: John Harrison <[email protected]>
Some platforms have very long timeouts configured for some engines. Some have them disabled completely. That makes for a very slow (or broken) hangman test. So explicitly configure the engines to have reasonable settings first.
--- tests/i915/i915_hangman.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)
tests/i915/i915_hangman.c +16 -0
@@ -496,8 +496,12 @@ igt_main {const intel_ctx_t *ctx;igt_hang_t hang = {}; +struct gem_engine_properties saved_params[GEM_MAX_ENGINES ]; +int num_engines =0 ; igt_fixture { +const struct intel_execution_engine2 *e; + device =drm_open_driver (DRIVER_INTEL );igt_require_gem (device);
@@ -511,6 +515,13 @@ igt_mainigt_require (has_error_state (sysfs));gem_require_mmap_device_coherent (device); + +for_each_physical_engine (device, e) { + saved_params[num_engines].engine = e; + saved_params[num_engines].preempt_timeout =500 ; + saved_params[num_engines].heartbeat_interval =1000 ; +gem_engine_properties_configure (device, saved_params + num_engines++); + } }igt_describe ("Basic error capture" );
@@ -542,6 +553,11 @@ igt_maindo_tests ("engine" ,"engine" , ctx); igt_fixture { +int i; + +for (i =0 ; i < num_engines; i++) +gem_engine_properties_restore (device, saved_params + i); +igt_disallow_hang (device, hang);intel_ctx_destroy (device, ctx);close (device);
Signature · 1 line
2.25.1
PATCH v5 15/15 tests/i915/gem_exec_capture: Restore engines
In reply to [email protected]From: John Harrison <[email protected]>
The test was updated some engine properties but not restoring them afterwards. That would leave the system in a non-default state which could potentially affect subsequent tests. Fix it by using the new save/restore engine properties helper functions.
v2: Don't restore too soon in the 'pi' test.
--- tests/i915/gem_exec_capture.c | 42 +++++++++++++++++++++++++++-------- 1 file changed, 33 insertions(+), 9 deletions(-)
tests/i915/gem_exec_capture.c +33 -9
@@ -209,14 +209,21 @@ static int check_error_state(int dir, struct offset *obj_offsets, int obj_count,return blobs; } -static void configure_hangs (int fd,const struct intel_execution_engine2 *e,int ctxt_id) +static struct gem_engine_properties +configure_hangs (int fd,const struct intel_execution_engine2 *e,int ctxt_id) { +struct gem_engine_properties props; +/* Ensure fast hang detection */ -gem_engine_property_printf (fd, e->name,"preempt_timeout_ms" ,"%d" ,250 ); -gem_engine_property_printf (fd, e->name,"heartbeat_interval_ms" ,"%d" ,500 ); + props.engine = e; + props.preempt_timeout =250 ; + props.heartbeat_interval =500 ; +gem_engine_properties_configure (fd, &props);/* Allow engine based resets and disable banning */ igt_allow_hang (fd, ctxt_id,HANG_ALLOW_CAPTURE |HANG_WANT_ENGINE_RESET ); + +return props; }static bool fence_busy (int fence)
@@ -256,8 +263,9 @@ static void __capture1(int fd, int dir, uint64_t ahnd, const intel_ctx_t *ctx,uint32_t *batch, *seqno;struct offset offset;int i, fence_out; +struct gem_engine_properties saved_engine; -configure_hangs (fd, e, ctx->id); + saved_engine =configure_hangs (fd, e, ctx->id);memset (obj,0 ,sizeof (obj)); obj[SCRATCH ].handle =gem_create_in_memory_regions (fd,4096 , region);
@@ -371,6 +379,8 @@ static void __capture1(int fd, int dir, uint64_t ahnd, const intel_ctx_t *ctx,gem_close (fd, obj[BATCH ].handle);gem_close (fd, obj[NOCAPTURE ].handle);gem_close (fd, obj[SCRATCH ].handle); + +gem_engine_properties_restore (fd, &saved_engine); } static void capture(int fd, int dir, const intel_ctx_t *ctx,
@@ -417,8 +427,9 @@ __captureN(int fd, int dir, uint64_t ahnd, const intel_ctx_t *ctx,uint32_t *batch, *seqno;struct offset *offsets;int i, fence_out; +struct gem_engine_properties saved_engine; -configure_hangs (fd, e, ctx->id); + saved_engine =configure_hangs (fd, e, ctx->id); offsets =calloc (count,sizeof (*offsets));igt_assert (offsets);
@@ -559,10 +570,12 @@ __captureN(int fd, int dir, uint64_t ahnd, const intel_ctx_t *ctx,qsort (offsets, count,sizeof (*offsets), cmp);igt_assert (offsets[0 ].addr <= offsets[count-1 ].addr); + +gem_engine_properties_restore (fd, &saved_engine);return offsets; } -#define find_first_available_engine (fd, ctx, e) \ +#define find_first_available_engine (fd, ctx, e, saved) \ do { \ ctx = intel_ctx_create_all_physical(fd); \ igt_assert(ctx); \
@@ -570,7 +583,7 @@ __captureN(int fd, int dir, uint64_t ahnd, const intel_ctx_t *ctx,for_each_if (gem_class_can_store_dword (fd, e->class)) \ break; \igt_assert (e); \ -configure_hangs (fd, e, ctx->id); \ + saved =configure_hangs (fd, e, ctx->id); \ }while (0 ) static void many(int fd, int dir, uint64_t size, unsigned int flags)
@@ -580,8 +593,9 @@ static void many(int fd, int dir, uint64_t size, unsigned int flags)uint64_t ram, gtt, ahnd;unsigned long count, blobs;struct offset *offsets; +struct gem_engine_properties saved_engine; -find_first_available_engine (fd, ctx, e); +find_first_available_engine (fd, ctx, e, saved_engine); gtt =gem_aperture_size (fd) / size; ram = (intel_get_avail_ram_mb () <<20 ) / size;
@@ -602,6 +616,8 @@ static void many(int fd, int dir, uint64_t size, unsigned int flags)free (offsets);put_ahnd (ahnd); + +gem_engine_properties_restore (fd, &saved_engine); } static void prioinv(int fd, int dir, const intel_ctx_t *ctx,
@@ -617,6 +633,7 @@ static void prioinv(int fd, int dir, const intel_ctx_t *ctx, .flags = e->flags, .rsvd1 = ctx->id, }; +struct gem_engine_properties saved_engine;int64_t timeout =NSEC_PER_SEC ;/* 1s, feeling generous, blame debug */ uint64_t ram, gtt, ahnd, size =4 <<20 ;unsigned long count;
@@ -640,6 +657,8 @@ static void prioinv(int fd, int dir, const intel_ctx_t *ctx,intel_require_memory (count, size,CHECK_RAM ); + saved_engine =configure_hangs (fd, e, ctx->id); +gem_write (fd, obj.handle,0 , &bbe,sizeof (bbe));gem_execbuf (fd, &execbuf);gem_sync (fd, obj.handle);
@@ -683,6 +702,8 @@ static void prioinv(int fd, int dir, const intel_ctx_t *ctx,close (link[0 ]);close (link[1 ]); +gem_engine_properties_restore (fd, &saved_engine); +gem_quiescent_gpu (fd);put_offset (ahnd, obj.handle);put_ahnd (ahnd);
@@ -697,8 +718,9 @@ static void userptr(int fd, int dir)void *ptr;int obj_size =4096 ;uint32_t system_region =INTEL_MEMORY_REGION_ID (I915_SYSTEM_MEMORY ,0 ); +struct gem_engine_properties saved_engine; -find_first_available_engine (fd, ctx, e); +find_first_available_engine (fd, ctx, e, saved_engine);igt_assert (posix_memalign (&ptr, obj_size, obj_size) ==0 );memset (ptr,0 , obj_size);
@@ -710,6 +732,8 @@ static void userptr(int fd, int dir)gem_close (fd, handle);put_ahnd (ahnd);free (ptr); + +gem_engine_properties_restore (fd, &saved_engine); }static bool has_capture (int fd)
Signature · 1 line
2.25.1
Patchwork
CI[igt-dev] ✓ Fi.CI.BAT: success for Fixes for i915_hangman, gem_exec_capture and gem_exec_fence
In reply to [email protected]== Series Details ==
== Series Details ==
Series: Fixes for i915_hangman, gem_exec_capture and gem_exec_fence
URL : https://patchwork.freedesktop.org/series/98903/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_11088 -> IGTPW_6557
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/index.html
Participating hosts (49 -> 41)
------------------------------
Additional (1): fi-icl-u2
Missing (9): fi-ilk-m540 fi-rkl-guc shard-tglu fi-hsw-4200u fi-bsw-cyan fi-ctg-p8600 fi-pnv-d510 shard-rkl fi-bdw-samus
Known issues
------------
Here are the changes found in IGTPW_6557 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@amdgpu/amd_cs_nop@fork-compute0:
- fi-blb-e6850: NOTRUN -> [SKIP][1] ([fdo#109271]) +17 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/fi-blb-e6850/igt@amdgpu/[email protected]
* igt@amdgpu/amd_cs_nop@fork-gfx0:
- fi-icl-u2: NOTRUN -> [SKIP][2] ([fdo#109315]) +17 similar issues
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/fi-icl-u2/igt@amdgpu/[email protected]
* igt@gem_exec_suspend@basic-s3@smem:
- fi-bdw-5557u: [PASS][3] -> [INCOMPLETE][4] ([i915#146])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/fi-bdw-5557u/igt@gem_exec_suspend@[email protected]
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/fi-bdw-5557u/igt@gem_exec_suspend@[email protected]
* igt@gem_huc_copy@huc-copy:
- fi-icl-u2: NOTRUN -> [SKIP][5] ([i915#2190])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/fi-icl-u2/igt@[email protected]
* igt@gem_lmem_swapping@parallel-random-engines:
- fi-icl-u2: NOTRUN -> [SKIP][6] ([i915#4613]) +3 similar issues
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/fi-icl-u2/igt@[email protected]
* igt@i915_pm_rpm@module-reload:
- fi-kbl-guc: [PASS][7] -> [SKIP][8] ([fdo#109271])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/fi-kbl-guc/igt@[email protected]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/fi-kbl-guc/igt@[email protected]
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-icl-u2: NOTRUN -> [SKIP][9] ([fdo#111827]) +8 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/fi-icl-u2/igt@[email protected]
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- fi-icl-u2: NOTRUN -> [SKIP][10] ([fdo#109278]) +2 similar issues
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/fi-icl-u2/igt@[email protected]
* igt@kms_force_connector_basic@force-load-detect:
- fi-icl-u2: NOTRUN -> [SKIP][11] ([fdo#109285])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/fi-icl-u2/igt@[email protected]
* igt@prime_vgem@basic-userptr:
- fi-icl-u2: NOTRUN -> [SKIP][12] ([i915#3301])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/fi-icl-u2/igt@[email protected]
#### Possible fixes ####
* igt@i915_selftest@live@hangcheck:
- bat-dg1-6: [DMESG-FAIL][13] ([i915#4494]) -> [PASS][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/bat-dg1-6/igt@i915_selftest@[email protected]
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/bat-dg1-6/igt@i915_selftest@[email protected]
- bat-dg1-5: [DMESG-FAIL][15] ([i915#4494]) -> [PASS][16]
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/bat-dg1-5/igt@i915_selftest@[email protected]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/bat-dg1-5/igt@i915_selftest@[email protected]
* igt@i915_selftest@live@requests:
- fi-blb-e6850: [DMESG-FAIL][17] ([i915#4528]) -> [PASS][18]
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/fi-blb-e6850/igt@i915_selftest@[email protected]
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/fi-blb-e6850/igt@i915_selftest@[email protected]
#### Warnings ####
* igt@gem_flink_basic@bad-flink:
- fi-skl-6600u: [INCOMPLETE][19] ([i915#4547]) -> [FAIL][20] ([i915#4547])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/fi-skl-6600u/igt@[email protected]
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/fi-skl-6600u/igt@[email protected]
* igt@runner@aborted:
- fi-skl-6600u: [FAIL][21] ([i915#2722] / [i915#4312]) -> [FAIL][22] ([i915#4312])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/fi-skl-6600u/igt@[email protected]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/fi-skl-6600u/igt@[email protected]
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[i915#146]: https://gitlab.freedesktop.org/drm/intel/issues/146
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#2722]: https://gitlab.freedesktop.org/drm/intel/issues/2722
[i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
[i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
[i915#4494]: https://gitlab.freedesktop.org/drm/intel/issues/4494
[i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
[i915#4547]: https://gitlab.freedesktop.org/drm/intel/issues/4547
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_6326 -> IGTPW_6557
CI-20190529: 20190529
CI_DRM_11088: 31b826a55fd46e5e2fc21720a466946f9ccfe557 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_6557: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/index.html
IGT_6326: ec75f64fcbcf4aac58fbf1bf629e8f59b19db4ce @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Testlist changes ==
+igt@i915_hangman@detector
+igt@i915_hangman@engine-engine-error
+igt@i915_hangman@engine-engine-hang
+igt@i915_hangman@engine-error-state-capture
+igt@i915_hangman@gt-engine-error
+igt@i915_hangman@gt-engine-hang
+igt@i915_hangman@gt-error-state-capture
-igt@i915_hangman@engine-error
-igt@i915_hangman@engine-hang
-igt@i915_hangman@error-state-capture
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/index.html
Patchwork
CI[igt-dev] ✓ Fi.CI.IGT: success for Fixes for i915_hangman, gem_exec_capture and gem_exec_fence
In reply to [email protected]== Series Details ==
== Series Details ==
Series: Fixes for i915_hangman, gem_exec_capture and gem_exec_fence
URL : https://patchwork.freedesktop.org/series/98903/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_11088_full -> IGTPW_6557_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/index.html
Participating hosts (13 -> 8)
------------------------------
Missing (5): pig-kbl-iris pig-glk-j5005 pig-skl-6260u shard-rkl shard-dg1
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_6557_full:
### IGT changes ###
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses. They do not affect the overall result.
* igt@gem_exec_schedule@preempt-queue-contexts-chain@rcs0:
- {shard-tglu}: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-tglu-4/igt@gem_exec_schedule@[email protected]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglu-7/igt@gem_exec_schedule@[email protected]
New tests
---------
New tests have been introduced between CI_DRM_11088_full and IGTPW_6557_full:
### New IGT tests (42) ###
* igt@i915_hangman@detector:
- Statuses :
- Exec time: [None] s
* igt@i915_hangman@detector@bcs0:
- Statuses : 7 pass(s)
- Exec time: [4.03, 10.06] s
* igt@i915_hangman@detector@rcs0:
- Statuses : 7 pass(s)
- Exec time: [3.32, 10.00] s
* igt@i915_hangman@detector@vcs0:
- Statuses : 7 pass(s)
- Exec time: [3.97, 10.04] s
* igt@i915_hangman@detector@vcs1:
- Statuses : 3 pass(s)
- Exec time: [9.89, 9.99] s
* igt@i915_hangman@detector@vecs0:
- Statuses : 6 pass(s)
- Exec time: [9.88, 10.08] s
* igt@i915_hangman@engine-engine-error:
- Statuses : 1 skip(s)
- Exec time: [0.0] s
* igt@i915_hangman@engine-engine-error@bcs0:
- Statuses : 2 pass(s) 3 skip(s)
- Exec time: [0.00, 0.03] s
* igt@i915_hangman@engine-engine-error@rcs0:
- Statuses : 5 pass(s)
- Exec time: [0.02, 0.07] s
* igt@i915_hangman@engine-engine-error@vcs0:
- Statuses : 5 pass(s)
- Exec time: [0.02, 0.07] s
* igt@i915_hangman@engine-engine-error@vcs1:
- Statuses : 3 pass(s)
- Exec time: [0.02, 0.04] s
* igt@i915_hangman@engine-engine-error@vecs0:
- Statuses : 5 pass(s)
- Exec time: [0.02, 0.07] s
* igt@i915_hangman@engine-engine-hang:
- Statuses : 1 skip(s)
- Exec time: [0.0] s
* igt@i915_hangman@engine-engine-hang@bcs0:
- Statuses : 5 pass(s)
- Exec time: [0.53, 0.57] s
* igt@i915_hangman@engine-engine-hang@rcs0:
- Statuses : 5 pass(s)
- Exec time: [0.53, 0.58] s
* igt@i915_hangman@engine-engine-hang@vcs0:
- Statuses : 5 pass(s)
- Exec time: [0.53, 0.57] s
* igt@i915_hangman@engine-engine-hang@vcs1:
- Statuses : 4 pass(s)
- Exec time: [0.53, 0.54] s
* igt@i915_hangman@engine-engine-hang@vecs0:
- Statuses : 5 pass(s)
- Exec time: [0.53, 0.57] s
* igt@i915_hangman@engine-error-state-capture:
- Statuses : 1 skip(s)
- Exec time: [0.0] s
* igt@i915_hangman@engine-error-state-capture@bcs0:
- Statuses : 6 pass(s)
- Exec time: [3.96, 4.03] s
* igt@i915_hangman@engine-error-state-capture@rcs0:
- Statuses : 6 pass(s)
- Exec time: [3.68, 4.24] s
* igt@i915_hangman@engine-error-state-capture@vcs0:
- Statuses : 6 pass(s)
- Exec time: [3.96, 4.03] s
* igt@i915_hangman@engine-error-state-capture@vcs1:
- Statuses : 4 pass(s)
- Exec time: [3.97, 4.03] s
* igt@i915_hangman@engine-error-state-capture@vecs0:
- Statuses : 6 pass(s)
- Exec time: [3.97, 4.04] s
* igt@i915_hangman@gt-engine-error:
- Statuses : 1 skip(s)
- Exec time: [0.0] s
* igt@i915_hangman@gt-engine-error@bcs0:
- Statuses : 2 pass(s) 3 skip(s)
- Exec time: [0.00, 0.03] s
* igt@i915_hangman@gt-engine-error@rcs0:
- Statuses : 5 pass(s)
- Exec time: [0.03, 0.07] s
* igt@i915_hangman@gt-engine-error@vcs0:
- Statuses : 5 pass(s)
- Exec time: [0.02, 0.07] s
* igt@i915_hangman@gt-engine-error@vcs1:
- Statuses : 3 pass(s)
- Exec time: [0.02, 0.03] s
* igt@i915_hangman@gt-engine-error@vecs0:
- Statuses : 5 pass(s)
- Exec time: [0.03, 0.07] s
* igt@i915_hangman@gt-engine-hang:
- Statuses : 1 skip(s)
- Exec time: [0.0] s
* igt@i915_hangman@gt-engine-hang@bcs0:
- Statuses : 6 pass(s)
- Exec time: [0.54, 0.57] s
* igt@i915_hangman@gt-engine-hang@rcs0:
- Statuses : 6 pass(s)
- Exec time: [0.53, 0.58] s
* igt@i915_hangman@gt-engine-hang@vcs0:
- Statuses : 6 pass(s)
- Exec time: [0.53, 0.58] s
* igt@i915_hangman@gt-engine-hang@vcs1:
- Statuses : 3 pass(s)
- Exec time: [0.53, 0.54] s
* igt@i915_hangman@gt-engine-hang@vecs0:
- Statuses : 6 pass(s)
- Exec time: [0.53, 0.58] s
* igt@i915_hangman@gt-error-state-capture:
- Statuses :
- Exec time: [None] s
* igt@i915_hangman@gt-error-state-capture@bcs0:
- Statuses : 6 pass(s)
- Exec time: [3.97, 10.04] s
* igt@i915_hangman@gt-error-state-capture@rcs0:
- Statuses : 6 pass(s)
- Exec time: [3.12, 9.82] s
* igt@i915_hangman@gt-error-state-capture@vcs0:
- Statuses : 6 pass(s)
- Exec time: [4.03, 10.05] s
* igt@i915_hangman@gt-error-state-capture@vcs1:
- Statuses : 3 pass(s)
- Exec time: [9.98, 10.05] s
* igt@i915_hangman@gt-error-state-capture@vecs0:
- Statuses : 5 pass(s)
- Exec time: [9.98, 9.99] s
Known issues
------------
Here are the changes found in IGTPW_6557_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@feature_discovery@psr2:
- shard-iclb: [PASS][3] -> [SKIP][4] ([i915#658])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-iclb2/igt@[email protected]
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb5/igt@[email protected]
* igt@gem_create@create-massive:
- shard-kbl: NOTRUN -> [DMESG-WARN][5] ([i915#3002]) +1 similar issue
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl4/igt@[email protected]
* igt@gem_ctx_isolation@preservation-s3@bcs0:
- shard-kbl: NOTRUN -> [DMESG-WARN][6] ([i915#180]) +4 similar issues
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl1/igt@gem_ctx_isolation@[email protected]
* igt@gem_ctx_persistence@legacy-engines-hostile:
- shard-snb: NOTRUN -> [SKIP][7] ([fdo#109271] / [i915#1099])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-snb5/igt@[email protected]
* igt@gem_ctx_persistence@smoketest:
- shard-tglb: [PASS][8] -> [FAIL][9] ([i915#2896])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-tglb6/igt@[email protected]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb7/igt@[email protected]
* igt@gem_eio@kms:
- shard-tglb: [PASS][10] -> [FAIL][11] ([i915#232])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-tglb6/igt@[email protected]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb5/igt@[email protected]
* igt@gem_exec_fair@basic-deadline:
- shard-glk: [PASS][12] -> [FAIL][13] ([i915#2846])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-glk1/igt@[email protected]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-glk9/igt@[email protected]
* igt@gem_exec_fair@basic-none@vecs0:
- shard-kbl: NOTRUN -> [FAIL][14] ([i915#2842]) +1 similar issue
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl3/igt@gem_exec_fair@[email protected]
* igt@gem_exec_fair@basic-pace-solo@rcs0:
- shard-iclb: NOTRUN -> [FAIL][15] ([i915#2842])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb7/igt@gem_exec_fair@[email protected]
- shard-glk: NOTRUN -> [FAIL][16] ([i915#2842]) +1 similar issue
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-glk3/igt@gem_exec_fair@[email protected]
- shard-tglb: NOTRUN -> [FAIL][17] ([i915#2842])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb3/igt@gem_exec_fair@[email protected]
* igt@gem_huc_copy@huc-copy:
- shard-tglb: [PASS][18] -> [SKIP][19] ([i915#2190])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-tglb5/igt@[email protected]
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb7/igt@[email protected]
* igt@gem_lmem_swapping@random:
- shard-kbl: NOTRUN -> [SKIP][20] ([fdo#109271] / [i915#4613]) +3 similar issues
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl7/igt@[email protected]
* igt@gem_pxp@display-protected-crc:
- shard-iclb: NOTRUN -> [SKIP][21] ([i915#4270])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb5/igt@[email protected]
- shard-tglb: NOTRUN -> [SKIP][22] ([i915#4270])
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb7/igt@[email protected]
* igt@gem_render_copy@x-tiled-to-vebox-yf-tiled:
- shard-kbl: NOTRUN -> [SKIP][23] ([fdo#109271]) +258 similar issues
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl1/igt@[email protected]
* igt@gem_render_copy@y-tiled-mc-ccs-to-y-tiled-ccs:
- shard-iclb: NOTRUN -> [SKIP][24] ([i915#768])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb3/igt@[email protected]
* igt@gem_userptr_blits@dmabuf-sync:
- shard-iclb: NOTRUN -> [SKIP][25] ([i915#3323])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb8/igt@[email protected]
- shard-tglb: NOTRUN -> [SKIP][26] ([i915#3323])
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb1/igt@[email protected]
* igt@gem_userptr_blits@unsync-unmap-cycles:
- shard-tglb: NOTRUN -> [SKIP][27] ([i915#3297])
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb8/igt@[email protected]
- shard-iclb: NOTRUN -> [SKIP][28] ([i915#3297])
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb6/igt@[email protected]
* igt@gen9_exec_parse@bb-start-out:
- shard-tglb: NOTRUN -> [SKIP][29] ([i915#2527] / [i915#2856])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb1/igt@[email protected]
* igt@gen9_exec_parse@shadow-peek:
- shard-iclb: NOTRUN -> [SKIP][30] ([i915#2856]) +1 similar issue
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb3/igt@[email protected]
* {igt@i915_hangman@engine-engine-hang} (NEW):
- shard-snb: NOTRUN -> [SKIP][31] ([fdo#109271]) +86 similar issues
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-snb5/igt@[email protected]
* igt@i915_pm_dc@dc6-dpms:
- shard-tglb: NOTRUN -> [FAIL][32] ([i915#454])
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb3/igt@[email protected]
* igt@i915_pm_dc@dc6-psr:
- shard-iclb: [PASS][33] -> [FAIL][34] ([i915#454])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-iclb8/igt@[email protected]
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb4/igt@[email protected]
* igt@i915_pm_dc@dc9-dpms:
- shard-apl: [PASS][35] -> [SKIP][36] ([fdo#109271])
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-apl1/igt@[email protected]
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-apl6/igt@[email protected]
* igt@i915_pm_rpm@modeset-non-lpsp:
- shard-kbl: [PASS][37] -> [DMESG-WARN][38] ([i915#1982])
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-kbl3/igt@[email protected]
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl6/igt@[email protected]
* igt@i915_suspend@debugfs-reader:
- shard-apl: [PASS][39] -> [DMESG-WARN][40] ([i915#180]) +2 similar issues
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-apl7/igt@[email protected]
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-apl2/igt@[email protected]
* igt@kms_big_fb@linear-32bpp-rotate-180:
- shard-glk: [PASS][41] -> [DMESG-WARN][42] ([i915#118]) +3 similar issues
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-glk3/igt@[email protected]
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-glk1/igt@[email protected]
* igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip:
- shard-apl: NOTRUN -> [SKIP][43] ([fdo#109271] / [i915#3777]) +2 similar issues
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-apl1/igt@[email protected]
* igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip:
- shard-kbl: NOTRUN -> [SKIP][44] ([fdo#109271] / [i915#3777]) +4 similar issues
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl3/igt@[email protected]
* igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-hflip:
- shard-glk: NOTRUN -> [SKIP][45] ([fdo#109271] / [i915#3777]) +1 similar issue
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-glk4/igt@[email protected]
* igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip:
- shard-tglb: NOTRUN -> [SKIP][46] ([fdo#111615])
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb5/igt@[email protected]
* igt@kms_big_joiner@invalid-modeset:
- shard-iclb: NOTRUN -> [SKIP][47] ([i915#2705])
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb2/igt@[email protected]
- shard-tglb: NOTRUN -> [SKIP][48] ([i915#2705])
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb5/igt@[email protected]
* igt@kms_ccs@pipe-a-random-ccs-data-y_tiled_gen12_rc_ccs_cc:
- shard-iclb: NOTRUN -> [SKIP][49] ([fdo#109278] / [i915#3886]) +1 similar issue
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb1/igt@kms_ccs@pipe-a-random-ccs-data-y_tiled_gen12_rc_ccs_cc.html
- shard-apl: NOTRUN -> [SKIP][50] ([fdo#109271] / [i915#3886]) +3 similar issues
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-apl8/igt@kms_ccs@pipe-a-random-ccs-data-y_tiled_gen12_rc_ccs_cc.html
- shard-glk: NOTRUN -> [SKIP][51] ([fdo#109271] / [i915#3886]) +1 similar issue
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-glk7/igt@kms_ccs@pipe-a-random-ccs-data-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_mc_ccs:
- shard-kbl: NOTRUN -> [SKIP][52] ([fdo#109271] / [i915#3886]) +10 similar issues
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl6/igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html
* igt@kms_ccs@pipe-d-bad-aux-stride-yf_tiled_ccs:
- shard-tglb: NOTRUN -> [SKIP][53] ([fdo#111615] / [i915#3689]) +3 similar issues
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb8/igt@kms_ccs@pipe-d-bad-aux-stride-yf_tiled_ccs.html
* igt@kms_chamelium@dp-hpd-for-each-pipe:
- shard-iclb: NOTRUN -> [SKIP][54] ([fdo#109284] / [fdo#111827]) +3 similar issues
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb3/igt@[email protected]
* igt@kms_chamelium@hdmi-hpd-storm:
- shard-kbl: NOTRUN -> [SKIP][55] ([fdo#109271] / [fdo#111827]) +20 similar issues
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl6/igt@[email protected]
* igt@kms_color@pipe-d-gamma:
- shard-iclb: NOTRUN -> [SKIP][56] ([fdo#109278] / [i915#1149])
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb4/igt@[email protected]
* igt@kms_color_chamelium@pipe-a-ctm-green-to-red:
- shard-glk: NOTRUN -> [SKIP][57] ([fdo#109271] / [fdo#111827]) +5 similar issues
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-glk1/igt@[email protected]
- shard-apl: NOTRUN -> [SKIP][58] ([fdo#109271] / [fdo#111827]) +6 similar issues
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-apl6/igt@[email protected]
* igt@kms_color_chamelium@pipe-d-ctm-0-5:
- shard-snb: NOTRUN -> [SKIP][59] ([fdo#109271] / [fdo#111827]) +4 similar issues
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-snb5/igt@[email protected]
* igt@kms_color_chamelium@pipe-d-ctm-red-to-blue:
- shard-tglb: NOTRUN -> [SKIP][60] ([fdo#109284] / [fdo#111827]) +6 similar issues
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb1/igt@[email protected]
- shard-iclb: NOTRUN -> [SKIP][61] ([fdo#109278] / [fdo#109284] / [fdo#111827]) +1 similar issue
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb4/igt@[email protected]
* igt@kms_content_protection@atomic:
- shard-kbl: NOTRUN -> [TIMEOUT][62] ([i915#1319]) +1 similar issue
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl6/igt@[email protected]
* igt@kms_cursor_crc@pipe-a-cursor-32x32-offscreen:
- shard-tglb: NOTRUN -> [SKIP][63] ([i915#3319])
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb5/igt@[email protected]
* igt@kms_cursor_crc@pipe-a-cursor-512x512-rapid-movement:
- shard-iclb: NOTRUN -> [SKIP][64] ([fdo#109278] / [fdo#109279]) +1 similar issue
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb1/igt@[email protected]
- shard-tglb: NOTRUN -> [SKIP][65] ([fdo#109279] / [i915#3359]) +1 similar issue
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb5/igt@[email protected]
* igt@kms_cursor_crc@pipe-b-cursor-32x10-sliding:
- shard-tglb: NOTRUN -> [SKIP][66] ([i915#3359]) +6 similar issues
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb5/igt@[email protected]
* igt@kms_cursor_crc@pipe-d-cursor-64x21-sliding:
- shard-iclb: NOTRUN -> [SKIP][67] ([fdo#109278]) +13 similar issues
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb5/igt@[email protected]
* igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic:
- shard-iclb: NOTRUN -> [SKIP][68] ([fdo#109274] / [fdo#109278]) +1 similar issue
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb7/igt@[email protected]
- shard-tglb: NOTRUN -> [SKIP][69] ([fdo#109274] / [fdo#111825]) +3 similar issues
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb3/igt@[email protected]
* igt@kms_cursor_legacy@pipe-d-torture-bo:
- shard-apl: NOTRUN -> [SKIP][70] ([fdo#109271] / [i915#533])
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-apl2/igt@[email protected]
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
- shard-tglb: NOTRUN -> [SKIP][71] ([i915#4103])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb7/igt@[email protected]
* igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@bc-hdmi-a1-hdmi-a2:
- shard-glk: [PASS][72] -> [FAIL][73] ([i915#79])
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-glk7/igt@kms_flip@[email protected]
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-glk9/igt@kms_flip@[email protected]
* igt@kms_flip@2x-flip-vs-panning-interruptible:
- shard-iclb: NOTRUN -> [SKIP][74] ([fdo#109274]) +1 similar issue
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb5/igt@[email protected]
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling:
- shard-iclb: [PASS][75] -> [SKIP][76] ([i915#3701])
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-iclb3/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling.html
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling:
- shard-tglb: NOTRUN -> [SKIP][77] ([i915#2587])
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb3/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-plflip-blt:
- shard-tglb: NOTRUN -> [SKIP][78] ([fdo#109280] / [fdo#111825]) +7 similar issues
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb6/igt@[email protected]
* igt@kms_frontbuffer_tracking@fbc-suspend:
- shard-kbl: [PASS][79] -> [DMESG-WARN][80] ([i915#180]) +4 similar issues
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-kbl3/igt@[email protected]
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl7/igt@[email protected]
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-pgflip-blt:
- shard-glk: NOTRUN -> [SKIP][81] ([fdo#109271]) +44 similar issues
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-glk9/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-pgflip-blt.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-mmap-cpu:
- shard-iclb: NOTRUN -> [SKIP][82] ([fdo#109280]) +4 similar issues
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb6/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-mmap-cpu.html
* igt@kms_plane_alpha_blend@pipe-a-alpha-transparent-fb:
- shard-kbl: NOTRUN -> [FAIL][83] ([i915#265])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl7/igt@[email protected]
* igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb:
- shard-glk: NOTRUN -> [FAIL][84] ([i915#265])
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-glk4/igt@[email protected]
* igt@kms_plane_alpha_blend@pipe-c-alpha-opaque-fb:
- shard-kbl: NOTRUN -> [FAIL][85] ([fdo#108145] / [i915#265]) +1 similar issue
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl7/igt@[email protected]
* igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area:
- shard-kbl: NOTRUN -> [SKIP][86] ([fdo#109271] / [i915#658]) +1 similar issue
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl1/igt@[email protected]
- shard-glk: NOTRUN -> [SKIP][87] ([fdo#109271] / [i915#658])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-glk7/igt@[email protected]
- shard-iclb: NOTRUN -> [SKIP][88] ([fdo#111068] / [i915#658])
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb5/igt@[email protected]
- shard-apl: NOTRUN -> [SKIP][89] ([fdo#109271] / [i915#658])
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-apl1/igt@[email protected]
- shard-tglb: NOTRUN -> [SKIP][90] ([i915#2920])
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb6/igt@[email protected]
* igt@kms_psr@psr2_sprite_blt:
- shard-iclb: [PASS][91] -> [SKIP][92] ([fdo#109441]) +1 similar issue
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-iclb2/igt@kms_psr@psr2_sprite_blt.html
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb6/igt@kms_psr@psr2_sprite_blt.html
* igt@kms_sysfs_edid_timing:
- shard-kbl: NOTRUN -> [FAIL][93] ([IGT#2])
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl4/igt@kms_sysfs_edid_timing.html
* igt@kms_vblank@pipe-b-accuracy-idle:
- shard-glk: [PASS][94] -> [FAIL][95] ([i915#43])
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-glk5/igt@[email protected]
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-glk2/igt@[email protected]
* igt@kms_writeback@writeback-pixel-formats:
- shard-kbl: NOTRUN -> [SKIP][96] ([fdo#109271] / [i915#2437]) +1 similar issue
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl4/igt@[email protected]
- shard-apl: NOTRUN -> [SKIP][97] ([fdo#109271] / [i915#2437])
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-apl1/igt@[email protected]
* igt@nouveau_crc@pipe-b-ctx-flip-skip-current-frame:
- shard-apl: NOTRUN -> [SKIP][98] ([fdo#109271]) +88 similar issues
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-apl1/igt@[email protected]
* igt@nouveau_crc@pipe-d-source-outp-complete:
- shard-iclb: NOTRUN -> [SKIP][99] ([fdo#109278] / [i915#2530])
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb1/igt@[email protected]
- shard-tglb: NOTRUN -> [SKIP][100] ([i915#2530])
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb5/igt@[email protected]
* igt@perf@gen12-unprivileged-single-ctx-counters:
- shard-iclb: NOTRUN -> [SKIP][101] ([fdo#109289])
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb5/igt@[email protected]
* igt@perf@mi-rpc:
- shard-tglb: NOTRUN -> [SKIP][102] ([fdo#109289])
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb5/igt@[email protected]
* igt@perf@polling-parameterized:
- shard-glk: [PASS][103] -> [FAIL][104] ([i915#1542])
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-glk4/igt@[email protected]
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-glk2/igt@[email protected]
* igt@prime_nv_pcopy@test3_3:
- shard-iclb: NOTRUN -> [SKIP][105] ([fdo#109291]) +1 similar issue
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb6/igt@prime_nv_pcopy@test3_3.html
- shard-tglb: NOTRUN -> [SKIP][106] ([fdo#109291]) +2 similar issues
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb8/igt@prime_nv_pcopy@test3_3.html
* igt@prime_vgem@fence-write-hang:
- shard-iclb: NOTRUN -> [SKIP][107] ([fdo#109295])
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb7/igt@[email protected]
- shard-tglb: NOTRUN -> [SKIP][108] ([fdo#109295])
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb8/igt@[email protected]
* igt@sysfs_clients@fair-3:
- shard-kbl: NOTRUN -> [SKIP][109] ([fdo#109271] / [i915#2994]) +3 similar issues
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-kbl6/igt@[email protected]
* igt@sysfs_clients@recycle-many:
- shard-apl: NOTRUN -> [SKIP][110] ([fdo#109271] / [i915#2994]) +1 similar issue
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-apl7/igt@[email protected]
* igt@sysfs_clients@sema-50:
- shard-iclb: NOTRUN -> [SKIP][111] ([i915#2994])
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-iclb8/igt@[email protected]
- shard-glk: NOTRUN -> [SKIP][112] ([fdo#109271] / [i915#2994])
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-glk8/igt@[email protected]
- shard-tglb: NOTRUN -> [SKIP][113] ([i915#2994])
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/shard-tglb7/igt@[email protected]
#### Possible fixes ####
* igt@gem_exec_balancer@parallel-out-fence:
- shard-iclb: [SKIP][114] ([i915#4525]) -> [PASS][115] +3 similar issues
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11088/shard-iclb7/igt@[email protected]
[115]: htt
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_6557/index.html