drm/i915: Asynchronous vma unbinding part1
Subsystems (2)
v4 cover drm/i915: Asynchronous vma unbinding part1
This is the first three already reviewed patches from the patch series titled "Asynchronous vma unbinding", with an additional cleanup patch from Christian, which would otherwise conflict heavily with this series.
Christian König (1):
drm/i915: remove questionable fence optimization during copy
Thomas Hellström (3):
drm/i915: Avoid using the i915_fence_array when collecting
dependencies
drm/i915: Break out the i915_deps utility drm/i915: Require the vm mutex for i915_vma_bind()
drivers/gpu/drm/i915/Makefile | 1 + .../gpu/drm/i915/gem/i915_gem_execbuffer.c | 50 ++- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 323 +++--------------- drivers/gpu/drm/i915/gt/intel_migrate.c | 24 +- drivers/gpu/drm/i915/gt/intel_migrate.h | 9 +- drivers/gpu/drm/i915/i915_deps.c | 237 +++++++++++++ drivers/gpu/drm/i915/i915_deps.h | 45 +++ drivers/gpu/drm/i915/i915_request.c | 22 ++ drivers/gpu/drm/i915/i915_request.h | 2 + drivers/gpu/drm/i915/i915_vma.c | 1 + 10 files changed, 412 insertions(+), 302 deletions(-) create mode 100644 drivers/gpu/drm/i915/i915_deps.c create mode 100644 drivers/gpu/drm/i915/i915_deps.h
Signature · 1 line
2.31.1
PATCH v4 1/4 drm/i915: Avoid using the i915_fence_array when collecting dependencies
Since the gt migration code was using only a single fence for dependencies, these were collected in a dma_fence_array. However, it turns out that it's illegal to use some dma_fences in a dma_fence_array, in particular other dma_fence_arrays and dma_fence_chains, and this causes trouble for us moving forward.
Have the gt migration code instead take a const struct i915_deps for dependencies. This means we can skip the dma_fence_array creation and instead pass the struct i915_deps instead to circumvent the problem.
v2:
- Make the prev_deps() function static. (kernel test robot <[email protected]>)
- Update the struct i915_deps kerneldoc.
v4:
- Rebase.
--- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 129 +++++-------------- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.h | 17 +++ drivers/gpu/drm/i915/gt/intel_migrate.c | 24 ++-- drivers/gpu/drm/i915/gt/intel_migrate.h | 9 +- drivers/gpu/drm/i915/i915_request.c | 22 ++++ drivers/gpu/drm/i915/i915_request.h | 2 + 6 files changed, 91 insertions(+), 112 deletions(-)
drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c +33 -96
@@ -3,8 +3,6 @@* Copyright © 2021 Intel Corporation */ -#include <linux/dma-fence-array.h> -#include <drm/ttm/ttm_bo_driver.h> #include "i915_drv.h"
@@ -44,17 +42,12 @@ void i915_ttm_migrate_set_failure_modes(bool gpu_migration,#endif /** -* DOC: Set of utilities to dynamically collect dependencies and -* eventually coalesce them into a single fence which is fed into -* the GT migration code, since it only accepts a single dependency -* fence. -* The single fence returned from these utilities, in the case of -* dependencies from multiple fence contexts, a struct dma_fence_array, -* since the i915 request code can break that up and await the individual -* fences. +* DOC: Set of utilities to dynamically collect dependencies into a +* structure which is fed into the GT migration code. * * Once we can do async unbinding, this is also needed to coalesce -* the migration fence with the unbind fences. +* the migration fence with the unbind fences if these are coalesced +* post-migration. * * While collecting the individual dependencies, we store the refcounted * struct dma_fence pointers in a realloc-managed pointer array, since
@@ -65,32 +58,13 @@ void i915_ttm_migrate_set_failure_modes(bool gpu_migration,* A struct i915_deps need to be initialized using i915_deps_init(). * If i915_deps_add_dependency() or i915_deps_add_resv() return an * error code they will internally call i915_deps_fini(), which frees -* all internal references and allocations. After a call to -* i915_deps_to_fence(), or i915_deps_sync(), the struct should similarly -* be viewed as uninitialized. +* all internal references and allocations. * * We might want to break this out into a separate file as a utility. */ #define I915_DEPS_MIN_ALLOC_CHUNK 8U -/** -* struct i915_deps - Collect dependencies into a single dma-fence -* @single: Storage for pointer if the collection is a single fence. -* @fence: Allocated array of fence pointers if more than a single fence; -* otherwise points to the address of @single. -* @num_deps: Current number of dependency fences. -* @fences_size: Size of the @fences array in number of pointers. -* @gfp: Allocation mode. -*/ -struct i915_deps { -struct dma_fence *single; -struct dma_fence **fences; -unsigned int num_deps; -unsigned int fences_size; -gfp_t gfp; -}; -static void i915_deps_reset_fences (struct i915_deps *deps) {if (deps->fences != &deps->single)
@@ -163,7 +137,7 @@ static int i915_deps_grow(struct i915_deps *deps, struct dma_fence *fence,return ret; } -static int i915_deps_sync (struct i915_deps *deps, +static int i915_deps_sync (const struct i915_deps *deps,const struct ttm_operation_ctx *ctx) {struct dma_fence **fences = deps->fences;
@@ -183,7 +157,6 @@ static int i915_deps_sync(struct i915_deps *deps,break ; } -i915_deps_fini (deps);return ret; }
@@ -221,34 +194,6 @@ static int i915_deps_add_dependency(struct i915_deps *deps,return i915_deps_grow (deps, fence, ctx); } -static struct dma_fence *i915_deps_to_fence (struct i915_deps *deps, -const struct ttm_operation_ctx *ctx) -{ -struct dma_fence_array *array; - -if (deps->num_deps ==0 ) -return NULL ; - -if (deps->num_deps ==1 ) { - deps->num_deps =0 ; -return deps->fences[0 ]; - } - -/* -* TODO: Alter the allocation mode here to not try too hard to -* make things async. -*/ - array =dma_fence_array_create (deps->num_deps, deps->fences,0 ,0 , - false); -if (!array) -return ERR_PTR (i915_deps_sync (deps, ctx)); - - deps->fences =NULL ; -i915_deps_reset_fences (deps); - -return &array->base; -} -static int i915_deps_add_resv (struct i915_deps *deps,struct dma_resv *resv,bool all,const bool no_excl,const struct ttm_operation_ctx *ctx)
@@ -387,7 +332,7 @@ static struct dma_fence *i915_ttm_accel_move(struct ttm_buffer_object *bo,struct ttm_resource *dst_mem, struct ttm_tt *dst_ttm, struct sg_table *dst_st, - struct dma_fence *dep) + const struct i915_deps *deps) { struct drm_i915_private *i915 = container_of(bo->bdev, typeof(*i915), bdev);
@@ -411,7 +356,7 @@ static struct dma_fence *i915_ttm_accel_move(struct ttm_buffer_object *bo,return ERR_PTR (-EINVAL );intel_engine_pm_get (to_gt (i915)->migrate.context->engine); - ret =intel_context_migrate_clear (to_gt (i915)->migrate.context, dep, + ret =intel_context_migrate_clear (to_gt (i915)->migrate.context, deps, dst_st->sgl, dst_level,i915_ttm_gtt_binds_lmem (dst_mem),0 , &rq);
@@ -425,7 +370,7 @@ static struct dma_fence *i915_ttm_accel_move(struct ttm_buffer_object *bo, src_level =i915_ttm_cache_level (i915, bo->resource, src_ttm);intel_engine_pm_get (to_gt (i915)->migrate.context->engine); ret = intel_context_migrate_copy(to_gt(i915)->migrate.context, - dep, src_rsgt->table.sgl, + deps, src_rsgt->table.sgl, src_level, i915_ttm_gtt_binds_lmem(bo->resource), dst_st->sgl, dst_level,
@@ -610,10 +555,11 @@ i915_ttm_memcpy_work_arm(struct i915_ttm_memcpy_work *work, }static struct dma_fence * -__i915_ttm_move (struct ttm_buffer_object *bo,bool clear, +__i915_ttm_move (struct ttm_buffer_object *bo, +const struct ttm_operation_ctx *ctx,bool clear,struct ttm_resource *dst_mem,struct ttm_tt *dst_ttm,struct i915_refct_sgt *dst_rsgt,bool allow_accel, -struct dma_fence *move_dep) +const struct i915_deps *move_deps) {struct i915_ttm_memcpy_work *copy_work =NULL ;struct i915_ttm_memcpy_arg _arg, *arg = &_arg;
@@ -621,7 +567,7 @@ __i915_ttm_move(struct ttm_buffer_object *bo, bool clear,if (allow_accel) { fence =i915_ttm_accel_move (bo, clear, dst_mem, dst_ttm, - &dst_rsgt->table, move_dep); + &dst_rsgt->table, move_deps);/* * We only need to intercept the error when moving to lmem.
@@ -655,8 +601,8 @@ __i915_ttm_move(struct ttm_buffer_object *bo, bool clear,if (!IS_ERR (fence)) goto out; - }else if (move_dep) { -int err =dma_fence_wait (move_dep, true); + }else if (move_deps) { +int err =i915_deps_sync (move_deps, ctx);if (err)return ERR_PTR (err);
@@ -680,29 +626,21 @@ __i915_ttm_move(struct ttm_buffer_object *bo, bool clear,return fence; } -static struct dma_fence *prev_fence (struct ttm_buffer_object *bo, -struct ttm_operation_ctx *ctx) +static int +prev_deps (struct ttm_buffer_object *bo,struct ttm_operation_ctx *ctx, +struct i915_deps *deps) { -struct i915_deps deps;int ret; -/* -* Instead of trying hard with GFP_KERNEL to allocate memory, -* the dependency collection will just sync if it doesn't -* succeed. -*/ -i915_deps_init (&deps,GFP_KERNEL | __GFP_NORETRY | __GFP_NOWARN); - ret =i915_deps_add_dependency (&deps, bo->moving, ctx); + ret =i915_deps_add_dependency (deps, bo->moving, ctx);if (!ret)/* * TODO: Only await excl fence here, and shared fences before * signaling the migration fence. */ - ret =i915_deps_add_resv (&deps, bo->base.resv, true, false, ctx); -if (ret) -return ERR_PTR (ret); + ret =i915_deps_add_resv (deps, bo->base.resv, true, false, ctx); -return i915_deps_to_fence (&deps, ctx); +return ret; }/**
@@ -756,16 +694,18 @@ int i915_ttm_move(struct ttm_buffer_object *bo, bool evict, clear = !i915_ttm_cpu_maps_iomem (bo->resource) && (!ttm || !ttm_tt_is_populated (ttm));if (!(clear && ttm && !(ttm->page_flags &TTM_TT_FLAG_ZERO_ALLOC ))) { -struct dma_fence *dep =prev_fence (bo, ctx); +struct i915_deps deps; -if (IS_ERR (dep)) { +i915_deps_init (&deps,GFP_KERNEL | __GFP_NORETRY | __GFP_NOWARN); + ret =prev_deps (bo, ctx, &deps); +if (ret) {i915_refct_sgt_put (dst_rsgt); -return PTR_ERR (dep); +return ret; } - migration_fence =__i915_ttm_move (bo, clear, dst_mem, bo->ttm, - dst_rsgt, true, dep); -dma_fence_put (dep); + migration_fence =__i915_ttm_move (bo, ctx, clear, dst_mem, bo->ttm, + dst_rsgt, true, &deps); +i915_deps_fini (&deps); }/* We can possibly get an -ERESTARTSYS here */
@@ -826,7 +766,7 @@ int i915_gem_obj_copy_ttm(struct drm_i915_gem_object *dst, .interruptible = intr, };struct i915_refct_sgt *dst_rsgt; -struct dma_fence *copy_fence, *dep_fence; +struct dma_fence *copy_fence;struct i915_deps deps;int ret, shared_err;
@@ -847,15 +787,12 @@ int i915_gem_obj_copy_ttm(struct drm_i915_gem_object *dst,if (ret)return ret; - dep_fence =i915_deps_to_fence (&deps, &ctx); -if (IS_ERR (dep_fence)) -return PTR_ERR (dep_fence); - dst_rsgt =i915_ttm_resource_get_st (dst, dst_bo->resource); - copy_fence =__i915_ttm_move (src_bo, false, dst_bo->resource, + copy_fence =__i915_ttm_move (src_bo, &ctx, false, dst_bo->resource, dst_bo->ttm, dst_rsgt, allow_accel, - dep_fence); + &deps); +i915_deps_fini (&deps);i915_refct_sgt_put (dst_rsgt);if (IS_ERR_OR_NULL (copy_fence))return PTR_ERR_OR_ZERO (copy_fence);
drivers/gpu/drm/i915/gem/i915_gem_ttm_move.h +17 -0
@@ -18,6 +18,23 @@ struct ttm_tt;struct drm_i915_gem_object ;struct i915_refct_sgt ; +/** +* struct i915_deps - Collect dependencies into a single dma-fence +* @single: Storage for pointer if the collection is a single fence. +* @fences: Allocated array of fence pointers if more than a single fence; +* otherwise points to the address of @single. +* @num_deps: Current number of dependency fences. +* @fences_size: Size of the @fences array in number of pointers. +* @gfp: Allocation mode. +*/ +struct i915_deps { +struct dma_fence *single; +struct dma_fence **fences; +unsigned int num_deps; +unsigned int fences_size; +gfp_t gfp; +}; +int i915_ttm_move_notify (struct ttm_buffer_object *bo); I915_SELFTEST_DECLARE(void i915_ttm_migrate_set_failure_modes(bool gpu_migration,
drivers/gpu/drm/i915/gt/intel_migrate.c +12 -12
@@ -404,7 +404,7 @@ static int emit_copy(struct i915_request *rq, int size) int intel_context_migrate_copy(struct intel_context *ce, - struct dma_fence *await, + const struct i915_deps *deps, struct scatterlist *src, enum i915_cache_level src_cache_level, bool src_is_lmem,
@@ -431,8 +431,8 @@ intel_context_migrate_copy(struct intel_context *ce, goto out_ce; } -if (await) { - err =i915_request_await_dma_fence (rq, await); +if (deps) { + err =i915_request_await_deps (rq, deps);if (err) goto out_rq;
@@ -442,7 +442,7 @@ intel_context_migrate_copy(struct intel_context *ce, goto out_rq; } - await =NULL ; + deps =NULL ; }/* The PTE updates + copy must not be interrupted. */
@@ -525,7 +525,7 @@ static int emit_clear(struct i915_request *rq, int size, u32 value) int intel_context_migrate_clear(struct intel_context *ce, - struct dma_fence *await, + const struct i915_deps *deps, struct scatterlist *sg, enum i915_cache_level cache_level, bool is_lmem,
@@ -550,8 +550,8 @@ intel_context_migrate_clear(struct intel_context *ce, goto out_ce; } -if (await) { - err =i915_request_await_dma_fence (rq, await); +if (deps) { + err =i915_request_await_deps (rq, deps);if (err) goto out_rq;
@@ -561,7 +561,7 @@ intel_context_migrate_clear(struct intel_context *ce, goto out_rq; } - await =NULL ; + deps =NULL ; }/* The PTE updates + clear must not be interrupted. */
@@ -599,7 +599,7 @@ intel_context_migrate_clear(struct intel_context *ce, int intel_migrate_copy(struct intel_migrate *m, struct i915_gem_ww_ctx *ww, - struct dma_fence *await, + const struct i915_deps *deps, struct scatterlist *src, enum i915_cache_level src_cache_level, bool src_is_lmem,
@@ -624,7 +624,7 @@ int intel_migrate_copy(struct intel_migrate *m,if (err) goto out; - err =intel_context_migrate_copy (ce, await, + err =intel_context_migrate_copy (ce, deps, src, src_cache_level, src_is_lmem, dst, dst_cache_level, dst_is_lmem, out);
@@ -638,7 +638,7 @@ int intel_migrate_copy(struct intel_migrate *m, int intel_migrate_clear(struct intel_migrate *m, struct i915_gem_ww_ctx *ww, - struct dma_fence *await, + const struct i915_deps *deps, struct scatterlist *sg, enum i915_cache_level cache_level, bool is_lmem,
@@ -661,7 +661,7 @@ intel_migrate_clear(struct intel_migrate *m,if (err) goto out; - err =intel_context_migrate_clear (ce, await, sg, cache_level, + err =intel_context_migrate_clear (ce, deps, sg, cache_level, is_lmem, value, out);intel_context_unpin (ce);
drivers/gpu/drm/i915/gt/intel_migrate.h +5 -4
@@ -11,6 +11,7 @@#include "intel_migrate_types.h" struct dma_fence ; +struct i915_deps ;struct i915_request ;struct i915_gem_ww_ctx ;struct intel_gt ;
@@ -23,7 +24,7 @@ struct intel_context *intel_migrate_create_context(struct intel_migrate *m); int intel_migrate_copy(struct intel_migrate *m, struct i915_gem_ww_ctx *ww, - struct dma_fence *await, + const struct i915_deps *deps, struct scatterlist *src, enum i915_cache_level src_cache_level, bool src_is_lmem,
@@ -33,7 +34,7 @@ int intel_migrate_copy(struct intel_migrate *m, struct i915_request **out); int intel_context_migrate_copy(struct intel_context *ce, - struct dma_fence *await, + const struct i915_deps *deps, struct scatterlist *src, enum i915_cache_level src_cache_level, bool src_is_lmem,
@@ -45,7 +46,7 @@ int intel_context_migrate_copy(struct intel_context *ce, int intel_migrate_clear(struct intel_migrate *m, struct i915_gem_ww_ctx *ww, - struct dma_fence *await, + const struct i915_deps *deps, struct scatterlist *sg, enum i915_cache_level cache_level, bool is_lmem,
@@ -53,7 +54,7 @@ intel_migrate_clear(struct intel_migrate *m, struct i915_request **out); int intel_context_migrate_clear(struct intel_context *ce, - struct dma_fence *await, + const struct i915_deps *deps, struct scatterlist *sg, enum i915_cache_level cache_level, bool is_lmem,
drivers/gpu/drm/i915/i915_request.c +22 -0
@@ -32,6 +32,7 @@#include <linux/sched/mm.h> #include "gem/i915_gem_context.h" +#include "gem/i915_gem_ttm_move.h" #include "gt/intel_breadcrumbs.h" #include "gt/intel_context.h" #include "gt/intel_engine.h"
@@ -1543,6 +1544,27 @@ i915_request_await_dma_fence(struct i915_request *rq, struct dma_fence *fence)return 0 ; } +/** +* i915_request_await_deps - set this request to (async) wait upon a struct +* i915_deps dma_fence collection +* @rq: request we are wishing to use +* @deps: The struct i915_deps containing the dependencies. +* +* Returns 0 if successful, negative error code on error. +*/ +int i915_request_await_deps (struct i915_request *rq,const struct i915_deps *deps) +{ +int i, err; + +for (i =0 ; i < deps->num_deps; ++i) { + err =i915_request_await_dma_fence (rq, deps->fences[i]); +if (err) +return err; + } + +return 0 ; +} +/** * i915_request_await_object - set this request to (async) wait upon a bo * @to: request we are wishing to use
drivers/gpu/drm/i915/i915_request.h +2 -0
@@ -47,6 +47,7 @@struct drm_file ;struct drm_i915_gem_object ;struct drm_printer ; +struct i915_deps ;struct i915_request ;#if IS_ENABLED (CONFIG_DRM_I915_CAPTURE_ERROR )
@@ -411,6 +412,7 @@ int i915_request_await_object(struct i915_request *to, bool write);int i915_request_await_dma_fence (struct i915_request *rq,struct dma_fence *fence); +int i915_request_await_deps (struct i915_request *rq,const struct i915_deps *deps);int i915_request_await_execution (struct i915_request *rq,struct dma_fence *fence);
Signature · 1 line
2.31.1
PATCH v4 2/4 drm/i915: remove questionable fence optimization during copy
In reply to Thomas HellströmFrom: Christian König <[email protected]>
First of all as discussed multiple times now kernel copies *must* always wait for all fences in a BO before actually doing the copy. This is mandatory.
Additional to that drop the handling when there can't be a shared slot allocated on the source BO and just properly return an error code. Otherwise this code path would only be tested under out of memory conditions.
--- drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 43 +++++++------------- 1 file changed, 14 insertions(+), 29 deletions(-)
drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c +14 -29
@@ -195,19 +195,14 @@ static int i915_deps_add_dependency(struct i915_deps *deps, }static int i915_deps_add_resv (struct i915_deps *deps,struct dma_resv *resv, -bool all,const bool no_excl,const struct ttm_operation_ctx *ctx) {struct dma_resv_iter iter;struct dma_fence *fence; +int ret;dma_resv_assert_held (resv); -dma_resv_for_each_fence (&iter, resv, all, fence) { -int ret; - -if (no_excl &&dma_resv_iter_is_exclusive (&iter)) -continue ; - +dma_resv_for_each_fence (&iter, resv, true, fence) { ret =i915_deps_add_dependency (deps, fence, ctx);if (ret)return ret;
@@ -634,11 +629,7 @@ prev_deps(struct ttm_buffer_object *bo, struct ttm_operation_ctx *ctx, ret =i915_deps_add_dependency (deps, bo->moving, ctx);if (!ret) -/* -* TODO: Only await excl fence here, and shared fences before -* signaling the migration fence. -*/ - ret =i915_deps_add_resv (deps, bo->base.resv, true, false, ctx); + ret =i915_deps_add_resv (deps, bo->base.resv, ctx);return ret; }
@@ -768,22 +759,21 @@ int i915_gem_obj_copy_ttm(struct drm_i915_gem_object *dst,struct i915_refct_sgt *dst_rsgt;struct dma_fence *copy_fence;struct i915_deps deps; -int ret, shared_err; +int ret;assert_object_held (dst);assert_object_held (src);i915_deps_init (&deps,GFP_KERNEL | __GFP_NORETRY | __GFP_NOWARN); -/* -* We plan to add a shared fence only for the source. If that -* fails, we await all source fences before commencing -* the copy instead of only the exclusive. -*/ - shared_err =dma_resv_reserve_shared (src_bo->base.resv,1 ); - ret =i915_deps_add_resv (&deps, dst_bo->base.resv, true, false, &ctx); -if (!ret) - ret =i915_deps_add_resv (&deps, src_bo->base.resv, - !!shared_err, false, &ctx); + ret =dma_resv_reserve_shared (src_bo->base.resv,1 ); +if (ret) +return ret; + + ret =i915_deps_add_resv (&deps, dst_bo->base.resv, &ctx); +if (ret) +return ret; + + ret =i915_deps_add_resv (&deps, src_bo->base.resv, &ctx);if (ret)return ret;
@@ -798,12 +788,7 @@ int i915_gem_obj_copy_ttm(struct drm_i915_gem_object *dst,return PTR_ERR_OR_ZERO (copy_fence);dma_resv_add_excl_fence (dst_bo->base.resv, copy_fence); - -/* If we failed to reserve a shared slot, add an exclusive fence */ -if (shared_err) -dma_resv_add_excl_fence (src_bo->base.resv, copy_fence); -else -dma_resv_add_shared_fence (src_bo->base.resv, copy_fence); +dma_resv_add_shared_fence (src_bo->base.resv, copy_fence);dma_fence_put (copy_fence);
Signature · 1 line
2.31.1
PATCH v4 3/4 drm/i915: Break out the i915_deps utility
In reply to Thomas HellströmSince it's starting to be used outside the i915 TTM move code, move it to a separate set of files.
v2:
- Update the documentation.
v4:
- Rebase.
--- drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c | 171 +------------ drivers/gpu/drm/i915/gem/i915_gem_ttm_move.h | 17 -- drivers/gpu/drm/i915/i915_deps.c | 237 +++++++++++++++++++ drivers/gpu/drm/i915/i915_deps.h | 45 ++++ drivers/gpu/drm/i915/i915_request.c | 2 +- 6 files changed, 285 insertions(+), 188 deletions(-) create mode 100644 drivers/gpu/drm/i915/i915_deps.c create mode 100644 drivers/gpu/drm/i915/i915_deps.h
drivers/gpu/drm/i915/Makefile +1 -0
@@ -163,6 +163,7 @@ i915-y += \ i915_active.o \ i915_buddy.o \ i915_cmd_parser.o \ + i915_deps.o \ i915_gem_evict.o \ i915_gem_gtt.o \ i915_gem_ww.o \
drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c +1 -170
183 lines not on this page · raw message
drivers/gpu/drm/i915/gem/i915_gem_ttm_move.h +0 -17
@@ -18,23 +18,6 @@ struct ttm_tt;struct drm_i915_gem_object ;struct i915_refct_sgt ; -/** -* struct i915_deps - Collect dependencies into a single dma-fence -* @single: Storage for pointer if the collection is a single fence. -* @fences: Allocated array of fence pointers if more than a single fence; -* otherwise points to the address of @single. -* @num_deps: Current number of dependency fences. -* @fences_size: Size of the @fences array in number of pointers. -* @gfp: Allocation mode. -*/ -struct i915_deps { -struct dma_fence *single; -struct dma_fence **fences; -unsigned int num_deps; -unsigned int fences_size; -gfp_t gfp; -}; -int i915_ttm_move_notify (struct ttm_buffer_object *bo); I915_SELFTEST_DECLARE(void i915_ttm_migrate_set_failure_modes(bool gpu_migration,
drivers/gpu/drm/i915/i915_deps.c new file +237 -0
237 lines not on this page · raw message
drivers/gpu/drm/i915/i915_deps.h new file +45 -0
45 lines not on this page · raw message
drivers/gpu/drm/i915/i915_request.c +1 -1
@@ -32,7 +32,6 @@#include <linux/sched/mm.h> #include "gem/i915_gem_context.h" -#include "gem/i915_gem_ttm_move.h" #include "gt/intel_breadcrumbs.h" #include "gt/intel_context.h" #include "gt/intel_engine.h"
@@ -43,6 +42,7 @@#include "gt/intel_rps.h" #include "i915_active.h" +#include "i915_deps.h" #include "i915_drv.h" #include "i915_trace.h" #include "intel_pm.h"
Signature · 1 line
2.31.1
PATCH v4 4/4 drm/i915: Require the vm mutex for i915_vma_bind()
In reply to Thomas HellströmProtect updates of struct i915_vma flags and async binding / unbinding with the vm::mutex. This means that i915_vma_bind() needs to assert vm::mutex held. In order to make that possible drop the caching of kmap_atomic() maps around i915_vma_bind().
An alternative would be to use kmap_local() but since we block cpu unplugging during sleeps inside kmap_local() sections this may have unwanted side-effects. Particularly since we might wait for gpu while holding the vm mutex.
This change may theoretically increase execbuf cpu-usage on snb, but at least on non-highmem systems that increase should be very small.
--- .../gpu/drm/i915/gem/i915_gem_execbuffer.c | 50 ++++++++++++++++++- drivers/gpu/drm/i915/i915_vma.c | 1 + 2 files changed, 50 insertions(+), 1 deletion(-)
drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c +49 -1
@@ -1109,6 +1109,47 @@ static inline struct i915_ggtt *cache_to_ggtt(struct reloc_cache *cache)return &i915->ggtt; } +static void reloc_cache_unmap (struct reloc_cache *cache) +{ +void *vaddr; + +if (!cache->vaddr) +return ; + + vaddr =unmask_page (cache->vaddr); +if (cache->vaddr &KMAP ) +kunmap_atomic (vaddr); +else +io_mapping_unmap_atomic ((void __iomem *)vaddr); +} + +static void reloc_cache_remap (struct reloc_cache *cache, +struct drm_i915_gem_object *obj) +{ +void *vaddr; + +if (!cache->vaddr) +return ; + +if (cache->vaddr &KMAP ) { +struct page *page =i915_gem_object_get_page (obj, cache->page); + + vaddr =kmap_atomic (page); + cache->vaddr =unmask_flags (cache->vaddr) | + (unsigned long )vaddr; + }else { +struct i915_ggtt *ggtt =cache_to_ggtt (cache); +unsigned long offset; + + offset = cache->node.start; +if (!drm_mm_node_allocated (&cache->node)) + offset += cache->page <<PAGE_SHIFT ; + + cache->vaddr = (unsigned long ) +io_mapping_map_atomic_wc (&ggtt->iomap, offset); + } +} +static void reloc_cache_reset (struct reloc_cache *cache,struct i915_execbuffer *eb) {void *vaddr;
@@ -1373,10 +1414,17 @@ eb_relocate_entry(struct i915_execbuffer *eb,* batchbuffers. */ if (reloc->write_domain ==I915_GEM_DOMAIN_INSTRUCTION && -GRAPHICS_VER (eb->i915) ==6 ) { +GRAPHICS_VER (eb->i915) ==6 && + !i915_vma_is_bound (target->vma,I915_VMA_GLOBAL_BIND )) { +struct i915_vma *vma = target->vma; + +reloc_cache_unmap (&eb->reloc_cache); +mutex_lock (&vma->vm->mutex); err =i915_vma_bind (target->vma, target->vma->obj->cache_level,PIN_GLOBAL ,NULL ); +mutex_unlock (&vma->vm->mutex); +reloc_cache_remap (&eb->reloc_cache, ev->vma->obj);if (err)return err; }
drivers/gpu/drm/i915/i915_vma.c +1 -0
@@ -393,6 +393,7 @@ int i915_vma_bind(struct i915_vma *vma,u32 bind_flags;u32 vma_flags; +lockdep_assert_held (&vma->vm->mutex);GEM_BUG_ON (!drm_mm_node_allocated (&vma->node));GEM_BUG_ON (vma->size > vma->node.size);
Signature · 1 line
2.31.1
Patchwork
CI[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Asynchronous vma unbinding part1
In reply to Thomas Hellström== Series Details ==
== Series Details ==
Series: drm/i915: Asynchronous vma unbinding part1
URL : https://patchwork.freedesktop.org/series/98278/
State : warning
== Summary ==
$ dim checkpatch origin/drm-tip 135b8658be47 drm/i915: Avoid using the i915_fence_array when collecting dependencies 1f9c56b98070 drm/i915: remove questionable fence optimization during copy c89fcf2d1bb6 drm/i915: Break out the i915_deps utility -:250: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does MAINTAINERS need updating? #250: new file mode 100644
total: 0 errors, 1 warnings, 0 checks, 509 lines checked faefbdcba339 drm/i915: Require the vm mutex for i915_vma_bind()
Patchwork
CI[Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915: Asynchronous vma unbinding part1
In reply to Thomas Hellström== Series Details ==
== Series Details ==
Series: drm/i915: Asynchronous vma unbinding part1
URL : https://patchwork.freedesktop.org/series/98278/
State : warning
== Summary ==
$ dim sparse --fast origin/drm-tip Sparse version: v0.6.2 Fast mode used, each commit won't be checked separately.
Patchwork
CI[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Asynchronous vma unbinding part1
In reply to Thomas Hellström== Series Details ==
== Series Details ==
Series: drm/i915: Asynchronous vma unbinding part1
URL : https://patchwork.freedesktop.org/series/98278/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_11025 -> Patchwork_21887
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/index.html
Participating hosts (45 -> 37)
------------------------------
Missing (8): bat-dg1-6 fi-hsw-4200u bat-dg1-5 fi-bsw-cyan bat-adlp-6 bat-adlp-4 fi-ctg-p8600 fi-bdw-samus
Known issues
------------
Here are the changes found in Patchwork_21887 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@amdgpu/amd_basic@cs-multi-fence:
- fi-blb-e6850: NOTRUN -> [SKIP][1] ([fdo#109271]) +17 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/fi-blb-e6850/igt@amdgpu/[email protected]
* igt@amdgpu/amd_cs_nop@sync-fork-gfx0:
- fi-skl-6600u: NOTRUN -> [SKIP][2] ([fdo#109271]) +18 similar issues
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/fi-skl-6600u/igt@amdgpu/[email protected]
* igt@amdgpu/amd_prime@amd-to-i915:
- fi-kbl-soraka: NOTRUN -> [SKIP][3] ([fdo#109271])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/fi-kbl-soraka/igt@amdgpu/[email protected]
* igt@gem_exec_suspend@basic-s0@smem:
- fi-tgl-1115g4: [PASS][4] -> [FAIL][5] ([i915#1888])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/fi-tgl-1115g4/igt@gem_exec_suspend@[email protected]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/fi-tgl-1115g4/igt@gem_exec_suspend@[email protected]
* igt@gem_exec_suspend@basic-s3@smem:
- fi-tgl-u2: [PASS][6] -> [FAIL][7] ([i915#1888])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/fi-tgl-u2/igt@gem_exec_suspend@[email protected]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/fi-tgl-u2/igt@gem_exec_suspend@[email protected]
* igt@kms_frontbuffer_tracking@basic:
- fi-cml-u2: [PASS][8] -> [DMESG-WARN][9] ([i915#4269])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/fi-cml-u2/igt@[email protected]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/fi-cml-u2/igt@[email protected]
#### Possible fixes ####
* igt@gem_exec_suspend@basic-s3@smem:
- fi-tgl-1115g4: [FAIL][10] ([i915#1888]) -> [PASS][11]
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/fi-tgl-1115g4/igt@gem_exec_suspend@[email protected]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/fi-tgl-1115g4/igt@gem_exec_suspend@[email protected]
* igt@i915_selftest@live@requests:
- fi-blb-e6850: [DMESG-FAIL][12] ([i915#4528]) -> [PASS][13]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/fi-blb-e6850/igt@i915_selftest@[email protected]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/fi-blb-e6850/igt@i915_selftest@[email protected]
* igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-b:
- fi-cfl-8109u: [DMESG-WARN][14] ([i915#295]) -> [PASS][15] +12 similar issues
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/fi-cfl-8109u/igt@[email protected]
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/fi-cfl-8109u/igt@[email protected]
* igt@kms_psr@primary_page_flip:
- fi-skl-6600u: [INCOMPLETE][16] ([i915#4547] / [i915#4838]) -> [PASS][17]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/fi-skl-6600u/igt@kms_psr@primary_page_flip.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/fi-skl-6600u/igt@kms_psr@primary_page_flip.html
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
[i915#295]: https://gitlab.freedesktop.org/drm/intel/issues/295
[i915#4269]: https://gitlab.freedesktop.org/drm/intel/issues/4269
[i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
[i915#4547]: https://gitlab.freedesktop.org/drm/intel/issues/4547
[i915#4838]: https://gitlab.freedesktop.org/drm/intel/issues/4838
Build changes
-------------
* Linux: CI_DRM_11025 -> Patchwork_21887
CI-20190529: 20190529
CI_DRM_11025: 22bb175d528e42a3fc0dab8fcb3071773319da6f @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_6316: 731e09c15b4fd559ce8aec30065fccde17a9b834 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_21887: faefbdcba339e812caceca2171e9c98c5e2b9582 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
faefbdcba339 drm/i915: Require the vm mutex for i915_vma_bind() c89fcf2d1bb6 drm/i915: Break out the i915_deps utility1f9c56b98070 drm/i915: remove questionable fence optimization during copy 135b8658be47 drm/i915: Avoid using the i915_fence_array when collecting dependencies
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/index.html
Patchwork
CI[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: Asynchronous vma unbinding part1
In reply to Thomas Hellström== Series Details ==
== Series Details ==
Series: drm/i915: Asynchronous vma unbinding part1
URL : https://patchwork.freedesktop.org/series/98278/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_11025_full -> Patchwork_21887_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Known issues
------------
Here are the changes found in Patchwork_21887_full that come from known issues:
### CI changes ###
#### Issues hit ####
* boot:
- shard-glk: ([PASS][1], [PASS][2], [PASS][3], [PASS][4], [PASS][5], [PASS][6], [PASS][7], [PASS][8], [PASS][9], [PASS][10], [PASS][11], [PASS][12], [PASS][13], [PASS][14], [PASS][15], [PASS][16], [PASS][17], [PASS][18], [PASS][19], [PASS][20], [PASS][21], [PASS][22], [PASS][23], [PASS][24], [PASS][25]) -> ([PASS][26], [PASS][27], [PASS][28], [PASS][29], [PASS][30], [PASS][31], [PASS][32], [PASS][33], [PASS][34], [PASS][35], [PASS][36], [PASS][37], [PASS][38], [PASS][39], [PASS][40], [PASS][41], [FAIL][42], [PASS][43], [PASS][44], [PASS][45], [PASS][46], [PASS][47], [PASS][48], [PASS][49], [PASS][50]) ([i915#4392])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk9/boot.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk9/boot.html
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk9/boot.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk8/boot.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk8/boot.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk8/boot.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk7/boot.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk7/boot.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk6/boot.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk6/boot.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk5/boot.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk5/boot.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk5/boot.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk4/boot.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk4/boot.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk4/boot.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk3/boot.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk3/boot.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk3/boot.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk2/boot.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk2/boot.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk2/boot.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk1/boot.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk1/boot.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk1/boot.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk8/boot.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk9/boot.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk9/boot.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk9/boot.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk8/boot.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk8/boot.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk7/boot.html
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk7/boot.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk7/boot.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk6/boot.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk6/boot.html
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk5/boot.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk5/boot.html
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk4/boot.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk4/boot.html
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk4/boot.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk4/boot.html
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk3/boot.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk3/boot.html
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk2/boot.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk2/boot.html
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk2/boot.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk1/boot.html
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk1/boot.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk1/boot.html
### IGT changes ###
#### Issues hit ####
* igt@feature_discovery@psr2:
- shard-iclb: [PASS][51] -> [SKIP][52] ([i915#658])
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-iclb2/igt@[email protected]
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb4/igt@[email protected]
* igt@gem_ctx_sseu@invalid-args:
- shard-apl: NOTRUN -> [SKIP][53] ([fdo#109271]) +121 similar issues
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl2/igt@[email protected]
* igt@gem_eio@in-flight-contexts-1us:
- shard-skl: [PASS][54] -> [TIMEOUT][55] ([i915#3063])
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-skl9/igt@[email protected]
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl8/igt@[email protected]
* igt@gem_eio@unwedge-stress:
- shard-iclb: [PASS][56] -> [TIMEOUT][57] ([i915#2481] / [i915#3070])
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-iclb6/igt@[email protected]
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb3/igt@[email protected]
* igt@gem_exec_balancer@parallel-keep-in-fence:
- shard-tglb: NOTRUN -> [SKIP][58] ([i915#4525])
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@gem_exec_capture@pi@bcs0:
- shard-skl: NOTRUN -> [INCOMPLETE][59] ([i915#4547])
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl8/igt@gem_exec_capture@[email protected]
* igt@gem_exec_fair@basic-none@vecs0:
- shard-apl: [PASS][60] -> [FAIL][61] ([i915#2842])
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-apl8/igt@gem_exec_fair@[email protected]
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl2/igt@gem_exec_fair@[email protected]
* igt@gem_exec_fair@basic-pace@rcs0:
- shard-kbl: [PASS][62] -> [FAIL][63] ([i915#2842]) +1 similar issue
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-kbl1/igt@gem_exec_fair@[email protected]
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-kbl3/igt@gem_exec_fair@[email protected]
* igt@gem_exec_fair@basic-pace@vcs1:
- shard-iclb: NOTRUN -> [FAIL][64] ([i915#2842])
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb2/igt@gem_exec_fair@[email protected]
* igt@gem_exec_fair@basic-throttle@rcs0:
- shard-iclb: [PASS][65] -> [FAIL][66] ([i915#2849])
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-iclb8/igt@gem_exec_fair@[email protected]
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@gem_exec_fair@[email protected]
* igt@gem_exec_params@secure-non-root:
- shard-iclb: NOTRUN -> [SKIP][67] ([fdo#112283])
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@[email protected]
* igt@gem_huc_copy@huc-copy:
- shard-tglb: [PASS][68] -> [SKIP][69] ([i915#2190])
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-tglb8/igt@[email protected]
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb7/igt@[email protected]
- shard-skl: NOTRUN -> [SKIP][70] ([fdo#109271] / [i915#2190])
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl9/igt@[email protected]
* igt@gem_lmem_swapping@heavy-random:
- shard-apl: NOTRUN -> [SKIP][71] ([fdo#109271] / [i915#4613]) +1 similar issue
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl4/igt@[email protected]
* igt@gem_lmem_swapping@heavy-verify-random:
- shard-skl: NOTRUN -> [SKIP][72] ([fdo#109271] / [i915#4613])
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl10/igt@[email protected]
* igt@gem_lmem_swapping@parallel-random-verify:
- shard-kbl: NOTRUN -> [SKIP][73] ([fdo#109271] / [i915#4613]) +2 similar issues
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-kbl4/igt@[email protected]
* igt@gem_lmem_swapping@verify:
- shard-iclb: NOTRUN -> [SKIP][74] ([i915#4613]) +1 similar issue
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb2/igt@[email protected]
* igt@gem_lmem_swapping@verify-random:
- shard-tglb: NOTRUN -> [SKIP][75] ([i915#4613]) +1 similar issue
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb8/igt@[email protected]
* igt@gem_pxp@display-protected-crc:
- shard-iclb: NOTRUN -> [SKIP][76] ([i915#4270])
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@[email protected]
* igt@gem_render_copy@linear-to-vebox-y-tiled:
- shard-iclb: NOTRUN -> [SKIP][77] ([i915#768])
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@[email protected]
* igt@gem_userptr_blits@coherency-sync:
- shard-tglb: NOTRUN -> [SKIP][78] ([fdo#110542])
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@gem_workarounds@suspend-resume-context:
- shard-apl: [PASS][79] -> [DMESG-WARN][80] ([i915#180]) +1 similar issue
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-apl1/igt@[email protected]
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl6/igt@[email protected]
* igt@gen9_exec_parse@allowed-all:
- shard-apl: [PASS][81] -> [DMESG-WARN][82] ([i915#1436] / [i915#716])
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-apl3/igt@[email protected]
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl7/igt@[email protected]
* igt@gen9_exec_parse@allowed-single:
- shard-skl: [PASS][83] -> [DMESG-WARN][84] ([i915#1436] / [i915#716])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-skl8/igt@[email protected]
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl4/igt@[email protected]
* igt@gen9_exec_parse@basic-rejected-ctx-param:
- shard-tglb: NOTRUN -> [SKIP][85] ([i915#2856])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@i915_pm_dc@dc6-dpms:
- shard-kbl: NOTRUN -> [FAIL][86] ([i915#454])
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-kbl7/igt@[email protected]
- shard-tglb: NOTRUN -> [FAIL][87] ([i915#454])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@i915_pm_rpm@dpms-mode-unset-non-lpsp:
- shard-tglb: NOTRUN -> [SKIP][88] ([fdo#111644] / [i915#1397] / [i915#2411]) +1 similar issue
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@i915_pm_rpm@gem-pread:
- shard-skl: [PASS][89] -> [DMESG-WARN][90] ([i915#1982]) +2 similar issues
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-skl7/igt@[email protected]
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl3/igt@[email protected]
* igt@i915_pm_sseu@full-enable:
- shard-tglb: NOTRUN -> [SKIP][91] ([i915#4387])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@kms_big_fb@linear-8bpp-rotate-90:
- shard-tglb: NOTRUN -> [SKIP][92] ([fdo#111614])
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@kms_big_fb@y-tiled-64bpp-rotate-270:
- shard-iclb: NOTRUN -> [SKIP][93] ([fdo#110725] / [fdo#111614])
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@[email protected]
* igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip:
- shard-skl: NOTRUN -> [SKIP][94] ([fdo#109271] / [i915#3777]) +1 similar issue
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl9/igt@[email protected]
* igt@kms_big_fb@yf-tiled-8bpp-rotate-90:
- shard-tglb: NOTRUN -> [SKIP][95] ([fdo#111615])
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-hflip:
- shard-apl: NOTRUN -> [SKIP][96] ([fdo#109271] / [i915#3777]) +1 similar issue
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl2/igt@[email protected]
* igt@kms_ccs@pipe-a-bad-aux-stride-yf_tiled_ccs:
- shard-tglb: NOTRUN -> [SKIP][97] ([fdo#111615] / [i915#3689]) +1 similar issue
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb8/igt@kms_ccs@pipe-a-bad-aux-stride-yf_tiled_ccs.html
* igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc:
- shard-kbl: NOTRUN -> [SKIP][98] ([fdo#109271] / [i915#3886]) +2 similar issues
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-kbl4/igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_ccs@pipe-c-bad-aux-stride-y_tiled_gen12_mc_ccs:
- shard-iclb: NOTRUN -> [SKIP][99] ([fdo#109278] / [i915#3886])
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@kms_ccs@pipe-c-bad-aux-stride-y_tiled_gen12_mc_ccs.html
* igt@kms_ccs@pipe-c-bad-rotation-90-y_tiled_gen12_mc_ccs:
- shard-apl: NOTRUN -> [SKIP][100] ([fdo#109271] / [i915#3886]) +5 similar issues
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl7/igt@kms_ccs@pipe-c-bad-rotation-90-y_tiled_gen12_mc_ccs.html
* igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc:
- shard-skl: NOTRUN -> [SKIP][101] ([fdo#109271] / [i915#3886]) +2 similar issues
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl10/igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_ccs@pipe-d-ccs-on-another-bo-y_tiled_ccs:
- shard-tglb: NOTRUN -> [SKIP][102] ([i915#3689]) +2 similar issues
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@kms_ccs@pipe-d-ccs-on-another-bo-y_tiled_ccs.html
* igt@kms_chamelium@hdmi-crc-nonplanar-formats:
- shard-iclb: NOTRUN -> [SKIP][103] ([fdo#109284] / [fdo#111827])
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@[email protected]
* igt@kms_chamelium@hdmi-edid-change-during-suspend:
- shard-apl: NOTRUN -> [SKIP][104] ([fdo#109271] / [fdo#111827]) +10 similar issues
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl1/igt@[email protected]
* igt@kms_chamelium@vga-hpd:
- shard-tglb: NOTRUN -> [SKIP][105] ([fdo#109284] / [fdo#111827]) +5 similar issues
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@kms_chamelium@vga-hpd-without-ddc:
- shard-kbl: NOTRUN -> [SKIP][106] ([fdo#109271] / [fdo#111827]) +10 similar issues
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-kbl7/igt@[email protected]
* igt@kms_color@pipe-d-ctm-blue-to-red:
- shard-iclb: NOTRUN -> [SKIP][107] ([fdo#109278] / [i915#1149])
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@[email protected]
* igt@kms_color_chamelium@pipe-d-ctm-0-25:
- shard-skl: NOTRUN -> [SKIP][108] ([fdo#109271] / [fdo#111827]) +4 similar issues
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl10/igt@[email protected]
* igt@kms_color_chamelium@pipe-d-ctm-limited-range:
- shard-iclb: NOTRUN -> [SKIP][109] ([fdo#109278] / [fdo#109284] / [fdo#111827])
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@[email protected]
* igt@kms_content_protection@atomic:
- shard-iclb: NOTRUN -> [SKIP][110] ([fdo#109300] / [fdo#111066])
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@[email protected]
* igt@kms_content_protection@srm:
- shard-kbl: NOTRUN -> [TIMEOUT][111] ([i915#1319])
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-kbl4/igt@[email protected]
- shard-apl: NOTRUN -> [TIMEOUT][112] ([i915#1319])
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl1/igt@[email protected]
* igt@kms_cursor_crc@pipe-a-cursor-512x170-random:
- shard-iclb: NOTRUN -> [SKIP][113] ([fdo#109278] / [fdo#109279])
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@[email protected]
* igt@kms_cursor_crc@pipe-c-cursor-32x32-onscreen:
- shard-tglb: NOTRUN -> [SKIP][114] ([i915#3319])
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@kms_cursor_crc@pipe-d-cursor-512x512-offscreen:
- shard-tglb: NOTRUN -> [SKIP][115] ([fdo#109279] / [i915#3359])
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions-varying-size:
- shard-iclb: [PASS][116] -> [FAIL][117] ([i915#2370])
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-iclb8/igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions-varying-size.html
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb7/igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions-varying-size.html
* igt@kms_dp_tiled_display@basic-test-pattern-with-chamelium:
- shard-tglb: NOTRUN -> [SKIP][118] ([i915#3528])
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@kms_fbcon_fbt@fbc-suspend:
- shard-apl: [PASS][119] -> [INCOMPLETE][120] ([i915#180])
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-apl3/igt@[email protected]
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl7/igt@[email protected]
- shard-kbl: [PASS][121] -> [INCOMPLETE][122] ([i915#180] / [i915#636])
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-kbl3/igt@[email protected]
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-kbl1/igt@[email protected]
* igt@kms_flip@2x-plain-flip-fb-recreate:
- shard-iclb: NOTRUN -> [SKIP][123] ([fdo#109274]) +3 similar issues
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@[email protected]
* igt@kms_flip@2x-plain-flip-ts-check@ab-hdmi-a1-hdmi-a2:
- shard-glk: [PASS][124] -> [FAIL][125] ([i915#2122])
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-glk6/igt@kms_flip@[email protected]
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-glk5/igt@kms_flip@[email protected]
* igt@kms_flip@flip-vs-expired-vblank@a-edp1:
- shard-skl: [PASS][126] -> [FAIL][127] ([i915#79])
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-skl3/igt@kms_flip@[email protected]
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl4/igt@kms_flip@[email protected]
* igt@kms_flip@plain-flip-fb-recreate-interruptible@c-edp1:
- shard-skl: [PASS][128] -> [FAIL][129] ([i915#2122])
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-skl9/igt@kms_flip@[email protected]
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl6/igt@kms_flip@[email protected]
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs:
- shard-iclb: NOTRUN -> [SKIP][130] ([i915#2587])
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-blt:
- shard-skl: NOTRUN -> [SKIP][131] ([fdo#109271]) +85 similar issues
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl10/igt@[email protected]
* igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-mmap-wc:
- shard-iclb: NOTRUN -> [SKIP][132] ([fdo#109280]) +6 similar issues
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-mmap-cpu:
- shard-tglb: NOTRUN -> [SKIP][133] ([fdo#111825]) +13 similar issues
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@kms_frontbuffer_tracking@psr-2p-primscrn-cur-indfb-draw-mmap-cpu.html
* igt@kms_hdr@bpc-switch:
- shard-skl: [PASS][134] -> [FAIL][135] ([i915#1188])
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-skl9/igt@[email protected]
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl6/igt@[email protected]
* igt@kms_hdr@bpc-switch-suspend:
- shard-kbl: [PASS][136] -> [DMESG-WARN][137] ([i915#180]) +2 similar issues
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-kbl7/igt@[email protected]
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-kbl7/igt@[email protected]
* igt@kms_pipe_b_c_ivb@from-pipe-c-to-b-with-3-lanes:
- shard-tglb: NOTRUN -> [SKIP][138] ([fdo#109289])
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@kms_pipe_crc_basic@read-crc-pipe-d:
- shard-apl: NOTRUN -> [SKIP][139] ([fdo#109271] / [i915#533])
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl7/igt@[email protected]
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-d:
- shard-kbl: NOTRUN -> [SKIP][140] ([fdo#109271] / [i915#533])
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-kbl7/igt@[email protected]
* igt@kms_plane_alpha_blend@pipe-b-alpha-basic:
- shard-apl: NOTRUN -> [FAIL][141] ([fdo#108145] / [i915#265])
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl2/igt@[email protected]
* igt@kms_plane_alpha_blend@pipe-c-alpha-opaque-fb:
- shard-skl: NOTRUN -> [FAIL][142] ([fdo#108145] / [i915#265])
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl9/igt@[email protected]
* igt@kms_plane_cursor@pipe-d-viewport-size-128:
- shard-iclb: NOTRUN -> [SKIP][143] ([fdo#109278]) +8 similar issues
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@[email protected]
* igt@kms_plane_lowres@pipe-a-tiling-yf:
- shard-tglb: NOTRUN -> [SKIP][144] ([fdo#111615] / [fdo#112054])
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@[email protected]
* igt@kms_plane_lowres@pipe-c-tiling-yf:
- shard-iclb: NOTRUN -> [SKIP][145] ([i915#3536])
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@[email protected]
* igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping:
- shard-kbl: NOTRUN -> [SKIP][146] ([fdo#109271] / [i915#2733])
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-kbl3/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping.html
* igt@kms_psr2_sf@cursor-plane-update-sf:
- shard-skl: NOTRUN -> [SKIP][147] ([fdo#109271] / [i915#658]) +2 similar issues
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-skl10/igt@[email protected]
* igt@kms_psr2_su@page_flip-nv12:
- shard-tglb: NOTRUN -> [SKIP][148] ([i915#1911])
[148]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb5/igt@kms_psr2_su@page_flip-nv12.html
- shard-iclb: NOTRUN -> [SKIP][149] ([fdo#111068] / [i915#658])
[149]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb7/igt@kms_psr2_su@page_flip-nv12.html
* igt@kms_psr2_su@page_flip-xrgb8888:
- shard-kbl: NOTRUN -> [SKIP][150] ([fdo#109271] / [i915#658])
[150]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-kbl3/igt@kms_psr2_su@page_flip-xrgb8888.html
- shard-apl: NOTRUN -> [SKIP][151] ([fdo#109271] / [i915#658]) +1 similar issue
[151]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl7/igt@kms_psr2_su@page_flip-xrgb8888.html
* igt@kms_psr@psr2_cursor_mmap_gtt:
- shard-tglb: NOTRUN -> [FAIL][152] ([i915#132] / [i915#3467])
[152]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@kms_psr@psr2_cursor_mmap_gtt.html
* igt@kms_psr@psr2_cursor_plane_onoff:
- shard-iclb: [PASS][153] -> [SKIP][154] ([fdo#109441])
[153]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11025/shard-iclb2/igt@kms_psr@psr2_cursor_plane_onoff.html
[154]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb4/igt@kms_psr@psr2_cursor_plane_onoff.html
* igt@kms_universal_plane@disable-primary-vs-flip-pipe-d:
- shard-kbl: NOTRUN -> [SKIP][155] ([fdo#109271]) +78 similar issues
[155]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-kbl3/igt@[email protected]
* igt@kms_writeback@writeback-pixel-formats:
- shard-apl: NOTRUN -> [SKIP][156] ([fdo#109271] / [i915#2437])
[156]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl2/igt@[email protected]
* igt@nouveau_crc@ctx-flip-threshold-reset-after-capture:
- shard-iclb: NOTRUN -> [SKIP][157] ([i915#2530]) +1 similar issue
[157]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb7/igt@[email protected]
* igt@prime_nv_api@i915_self_import:
- shard-tglb: NOTRUN -> [SKIP][158] ([fdo#109291])
[158]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-tglb1/igt@prime_nv_api@i915_self_import.html
* igt@prime_nv_test@nv_i915_sharing:
- shard-iclb: NOTRUN -> [SKIP][159] ([fdo#109291]) +2 similar issues
[159]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-iclb5/igt@prime_nv_test@nv_i915_sharing.html
* igt@sysfs_clients@recycle:
- shard-apl: NOTRUN -> [SKIP][160] ([fdo#109271] / [i915#2994]) +1 similar issue
[160]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/shard-apl1/igt@[email protected]
* igt@sysfs_clients@sema-25:
- shard-kbl: NOTRUN -> [
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21887/index.html