Move TLB invalidation code for its own file and document it
Subsystems (4)
v2 cover Move TLB invalidation code for its own file and document it
There are more things to be added to TLB invalidation. Before doing that, move the code to its own file, and add the relevant documentation.
Patch 1 only moves the code and do some function renames. No functional change.
Patch 2 adds documentation for the TLB invalidation algorithm and functions.
---
v2: only patch 2 (kernel-doc) was modified:
- The kernel-doc markups for TLB were added to i915.rst doc;
- Some minor fixes at the texts;
- Use a table instead of a literal block while explaining how the algorithm works. That should make easier to understand the logic, both in text form and after its conversion to HTML/PDF;
- Remove mention for GuC, as this depends on a series that will be sent later.
Chris Wilson (1):
drm/i915/gt: Move TLB invalidation to its own file
Mauro Carvalho Chehab (1):
drm/i915/gt: document TLB cache invalidation functions
Documentation/gpu/i915.rst | 7 + drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/gem/i915_gem_pages.c | 4 +- drivers/gpu/drm/i915/gt/intel_gt.c | 168 +---------------- drivers/gpu/drm/i915/gt/intel_gt.h | 12 -- drivers/gpu/drm/i915/gt/intel_tlb.c | 208 ++++++++++++++++++++++ drivers/gpu/drm/i915/gt/intel_tlb.h | 130 ++++++++++++++ drivers/gpu/drm/i915/i915_vma.c | 1 + 8 files changed, 352 insertions(+), 179 deletions(-) create mode 100644 drivers/gpu/drm/i915/gt/intel_tlb.c create mode 100644 drivers/gpu/drm/i915/gt/intel_tlb.h
Signature · 1 line
2.36.1
PATCH v2 1/2 drm/i915/gt: Move TLB invalidation to its own file
From: Chris Wilson <[email protected]>
Prepare for supporting more TLB invalidation scenarios by moving the current MMIO invalidation to its own file.
---
To avoid mailbombing on a large number of people, only mailing lists were C/C on the cover. See [PATCH v2 0/2] at: https://lore.kernel.org/all/[email protected]/
drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/gem/i915_gem_pages.c | 4 +- drivers/gpu/drm/i915/gt/intel_gt.c | 168 +------------------- drivers/gpu/drm/i915/gt/intel_gt.h | 12 -- drivers/gpu/drm/i915/gt/intel_tlb.c | 183 ++++++++++++++++++++++ drivers/gpu/drm/i915/gt/intel_tlb.h | 29 ++++ drivers/gpu/drm/i915/i915_vma.c | 1 + 7 files changed, 219 insertions(+), 179 deletions(-) create mode 100644 drivers/gpu/drm/i915/gt/intel_tlb.c create mode 100644 drivers/gpu/drm/i915/gt/intel_tlb.h
drivers/gpu/drm/i915/Makefile +1 -0
@@ -126,6 +126,7 @@ gt-y += \ gt/intel_sseu.o \ gt/intel_sseu_debugfs.o \ gt/intel_timeline.o \ + gt/intel_tlb.o \ gt/intel_workarounds.o \ gt/shmem_utils.o \ gt/sysfs_engines.o
drivers/gpu/drm/i915/gem/i915_gem_pages.c +2 -2
@@ -7,7 +7,7 @@#include <drm/drm_cache.h> #include "gt/intel_gt.h" -#include "gt/intel_gt_pm.h" +#include "gt/intel_tlb.h" #include "i915_drv.h" #include "i915_gem_object.h"
@@ -199,7 +199,7 @@ static void flush_tlb_invalidate(struct drm_i915_gem_object *obj)if (!obj->mm.tlb)return ; -intel_gt_invalidate_tlb (gt, obj->mm.tlb); +intel_gt_invalidate_tlb_full (gt, obj->mm.tlb); obj->mm.tlb =0 ; }
drivers/gpu/drm/i915/gt/intel_gt.c +3 -165
196 lines not on this page · raw message
drivers/gpu/drm/i915/gt/intel_gt.h +0 -12
@@ -101,16 +101,4 @@ void intel_gt_info_print(const struct intel_gt_info *info,void intel_gt_watchdog_work (struct work_struct *work); -static inline u32 intel_gt_tlb_seqno (const struct intel_gt *gt) -{ -return seqprop_sequence (>->tlb.seqno); -} - -static inline u32 intel_gt_next_invalidate_tlb_full (const struct intel_gt *gt) -{ -return intel_gt_tlb_seqno (gt) |1 ; -} - -void intel_gt_invalidate_tlb (struct intel_gt *gt,u32 seqno); -#endif /* __INTEL_GT_H__ */
drivers/gpu/drm/i915/gt/intel_tlb.c new file +183 -0
183 lines not on this page · raw message
drivers/gpu/drm/i915/gt/intel_tlb.h new file +29 -0
@@ -0,0 +1,29 @@ +/* SPDX-License-Identifier: MIT */ +/* +* Copyright © 2022 Intel Corporation +*/ + +#ifndef INTEL_TLB_H +#define INTEL_TLB_H + +#include <linux/seqlock.h> +#include <linux/types.h> + +#include "intel_gt_types.h" + +void intel_gt_invalidate_tlb_full (struct intel_gt *gt,u32 seqno); + +void intel_gt_init_tlb (struct intel_gt *gt); +void intel_gt_fini_tlb (struct intel_gt *gt); + +static inline u32 intel_gt_tlb_seqno (const struct intel_gt *gt) +{ +return seqprop_sequence (>->tlb.seqno); +} + +static inline u32 intel_gt_next_invalidate_tlb_full (const struct intel_gt *gt) +{ +return intel_gt_tlb_seqno (gt) |1 ; +} + +#endif /* INTEL_TLB_H */
drivers/gpu/drm/i915/i915_vma.c +1 -0
@@ -33,6 +33,7 @@#include "gt/intel_engine_heartbeat.h" #include "gt/intel_gt.h" #include "gt/intel_gt_requests.h" +#include "gt/intel_tlb.h" #include "i915_drv.h" #include "i915_gem_evict.h"
Signature · 1 line
2.36.1
Re: [Intel-gfx] [PATCH v2 1/2] drm/i915/gt: Move TLB invalidation to its own file
Quoted 4 lines · Mauro Carvalho Chehab
From: Chris Wilson <[email protected]>
Prepare for supporting more TLB invalidation scenarios by moving the current MMIO invalidation to its own file.
And looks like,
1. Rename intel_gt_invalidate_tlb() to intel_gt_invalidate_tlb_full()
2. Add intel_gt_init_tlb() and intel_gt_fini_tlb() abstracts.
Quoted 519 lines
Signed-off-by Chris Wilson <[email protected]>Cc Fei Yang <[email protected]>Signed-off-by Mauro Carvalho Chehab <[email protected]>---
To avoid mailbombing on a large number of people, only mailing lists were C/C on the cover. See [PATCH v2 0/2] at: https://lore.kernel.org/all/[email protected]/
drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/gem/i915_gem_pages.c | 4 +- drivers/gpu/drm/i915/gt/intel_gt.c | 168 +------------------- drivers/gpu/drm/i915/gt/intel_gt.h | 12 -- drivers/gpu/drm/i915/gt/intel_tlb.c | 183 ++++++++++++++++++++++ drivers/gpu/drm/i915/gt/intel_tlb.h | 29 ++++ drivers/gpu/drm/i915/i915_vma.c | 1 + 7 files changed, 219 insertions(+), 179 deletions(-)create mode 100644
drivers/gpu/drm/i915/gt/intel_tlb.ccreate mode 100644drivers/gpu/drm/i915/gt/intel_tlb.hdrivers/gpu/drm/i915/Makefile +1
-0@@ -126,6 +126,7 @@ gt-y += \ gt/intel_sseu.o \ gt/intel_sseu_debugfs.o \ gt/intel_timeline.o \ + gt/intel_tlb.o \ gt/intel_workarounds.o \ gt/shmem_utils.o \ gt/sysfs_engines.odrivers/gpu/drm/i915/gem/i915_gem_pages.c +2
-2@@ -7,7 +7,7 @@#include <drm/drm_cache.h> #include "gt/intel_gt.h" -#include "gt/intel_gt_pm.h" +#include "gt/intel_tlb.h" #include "i915_drv.h" #include "i915_gem_object.h" @@ -199,7 +199,7 @@ static void flush_tlb_invalidate(struct drm_i915_gem_object *obj)if (!obj->mm.tlb)return ; -intel_gt_invalidate_tlb (gt, obj->mm.tlb); +intel_gt_invalidate_tlb_full (gt, obj->mm.tlb); obj->mm.tlb =0 ; }drivers/gpu/drm/i915/gt/intel_gt.c +3
-165@@ -11,9 +11,7 @@#include "pxp/intel_pxp.h" #include "i915_drv.h" -#include "i915_perf_oa_regs.h" #include "intel_context.h" -#include "intel_engine_pm.h" #include "intel_engine_regs.h" #include "intel_ggtt_gmch.h" #include "intel_gt.h" @@ -31,6 +29,7 @@#include "intel_renderstate.h" #include "intel_rps.h" #include "intel_gt_sysfs.h" +#include "intel_tlb.h" #include "intel_uncore.h" #include "shmem_utils.h" @@ -48,8 +47,7 @@ static void __intel_gt_init_early(struct intel_gt *gt)intel_gt_init_reset (gt);intel_gt_init_requests (gt);intel_gt_init_timelines (gt); -mutex_init (>->tlb.invalidate_lock); -seqcount_mutex_init (>->tlb.seqno, >->tlb.invalidate_lock); +intel_gt_init_tlb (gt);intel_gt_pm_init_early (gt);intel_uc_init_early (>->uc);@@ -770,7 +768,7 @@ void intel_gt_driver_late_release_all(struct drm_i915_private *i915)intel_gt_fini_requests (gt);intel_gt_fini_reset (gt);intel_gt_fini_timelines (gt); -mutex_destroy (>->tlb.invalidate_lock); +intel_gt_fini_tlb (gt);intel_engines_free (gt); } }@@ -881,163 +879,3 @@ void intel_gt_info_print(const struct intel_gt_info *info,intel_sseu_dump (&info->sseu, p); } - -struct reg_and_bit { -i915_reg_t reg; -u32 bit; -}; - -static struct reg_and_bit -get_reg_and_bit (const struct intel_engine_cs *engine,const bool gen8, -const i915_reg_t *regs,const unsigned int num) -{ -const unsigned int class = engine->class; -struct reg_and_bit rb = { }; - -if (drm_WARN_ON_ONCE (&engine->i915->drm, - class >= num || !regs[class].reg)) -return rb; - - rb.reg = regs[class]; -if (gen8 && class ==VIDEO_DECODE_CLASS ) - rb.reg.reg +=4 * engine->instance;/* GEN8_M2TCR */ -else - rb.bit = engine->instance; - - rb.bit =BIT (rb.bit); - -return rb; -} - -static void mmio_invalidate_full (struct intel_gt *gt) -{ -static const i915_reg_t gen8_regs[] = { - [RENDER_CLASS ] =GEN8_RTCR , - [VIDEO_DECODE_CLASS ] =GEN8_M1TCR ,/* , GEN8_M2TCR */ - [VIDEO_ENHANCEMENT_CLASS ] =GEN8_VTCR , - [COPY_ENGINE_CLASS ] =GEN8_BTCR , - }; -static const i915_reg_t gen12_regs[] = { - [RENDER_CLASS ] =GEN12_GFX_TLB_INV_CR , - [VIDEO_DECODE_CLASS ] =GEN12_VD_TLB_INV_CR , - [VIDEO_ENHANCEMENT_CLASS ] =GEN12_VE_TLB_INV_CR , - [COPY_ENGINE_CLASS ] =GEN12_BLT_TLB_INV_CR , - [COMPUTE_CLASS ] =GEN12_COMPCTX_TLB_INV_CR , - }; -struct drm_i915_private *i915 = gt->i915; -struct intel_uncore *uncore = gt->uncore; -struct intel_engine_cs *engine; -intel_engine_mask_t awake, tmp; -enum intel_engine_id id; -const i915_reg_t *regs; -unsigned int num =0 ; - -if (GRAPHICS_VER (i915) ==12 ) { - regs = gen12_regs; - num =ARRAY_SIZE (gen12_regs); - }else if (GRAPHICS_VER (i915) >=8 &&GRAPHICS_VER (i915) <=11 ) { - regs = gen8_regs; - num =ARRAY_SIZE (gen8_regs); - }else if (GRAPHICS_VER (i915) <8 ) { -return ; - } - -if (drm_WARN_ONCE (&i915->drm, !num, -"Platform does not implement TLB invalidation!" )) -return ; - -intel_uncore_forcewake_get (uncore,FORCEWAKE_ALL ); - -spin_lock_irq (&uncore->lock);/* serialise invalidate with GT reset */ - - awake =0 ; -for_each_engine (engine, gt, id) { -struct reg_and_bit rb; - -if (!intel_engine_pm_is_awake (engine)) -continue ; - - rb =get_reg_and_bit (engine, regs == gen8_regs, regs, num); -if (!i915_mmio_reg_offset (rb.reg)) -continue ; - -intel_uncore_write_fw (uncore, rb.reg, rb.bit); - awake |= engine->mask; - } - -GT_TRACE (gt,"invalidated engines %08x\n" , awake); - -/* Wa_2207587034:tgl,dg1,rkl,adl-s,adl-p */ -if (awake && - (IS_TIGERLAKE (i915) || -IS_DG1 (i915) || -IS_ROCKETLAKE (i915) || -IS_ALDERLAKE_S (i915) || -IS_ALDERLAKE_P (i915))) -intel_uncore_write_fw (uncore,GEN12_OA_TLB_INV_CR ,1 ); - -spin_unlock_irq (&uncore->lock); - -for_each_engine_masked (engine, gt, awake, tmp) { -struct reg_and_bit rb; - -/* -* HW architecture suggest typical invalidation time at 40us, -* with pessimistic cases up to 100us and a recommendation to -* cap at 1ms. We go a bit higher just in case. -*/ -const unsigned int timeout_us =100 ; -const unsigned int timeout_ms =4 ; - - rb =get_reg_and_bit (engine, regs == gen8_regs, regs, num); -if (__intel_wait_for_register_fw (uncore, - rb.reg, rb.bit,0 , - timeout_us, timeout_ms, -NULL )) -drm_err_ratelimited (>->i915->drm, -"%s TLB invalidation did not complete in %ums!\n" , - engine->name, timeout_ms); - } - -/* -* Use delayed put since a) we mostly expect a flurry of TLB -* invalidations so it is good to avoid paying the forcewake cost and -* b) it works around a bug in Icelake which cannot cope with too rapid -* transitions. -*/ -intel_uncore_forcewake_put_delayed (uncore,FORCEWAKE_ALL ); -} - -static bool tlb_seqno_passed (const struct intel_gt *gt,u32 seqno) -{ -u32 cur =intel_gt_tlb_seqno (gt); - -/* Only skip if a *full* TLB invalidate barrier has passed */ -return (s32)(cur -ALIGN (seqno,2 )) >0 ; -} - -void intel_gt_invalidate_tlb (struct intel_gt *gt,u32 seqno) -{ -intel_wakeref_t wakeref; - -if (I915_SELFTEST_ONLY (gt->awake == -ENODEV )) -return ; - -if (intel_gt_is_wedged (gt)) -return ; - -if (tlb_seqno_passed (gt, seqno)) -return ; - - with_intel_gt_pm_if_awake(gt, wakeref) { -mutex_lock (>->tlb.invalidate_lock); -if (tlb_seqno_passed (gt, seqno)) - goto unlock; - -mmio_invalidate_full (gt); - -write_seqcount_invalidate (>->tlb.seqno); -unlock: -mutex_unlock (>->tlb.invalidate_lock); - } -}drivers/gpu/drm/i915/gt/intel_gt.h +0
-12@@ -101,16 +101,4 @@ void intel_gt_info_print(const struct intel_gt_info *info,void intel_gt_watchdog_work (struct work_struct *work); -static inline u32 intel_gt_tlb_seqno (const struct intel_gt *gt) -{ -return seqprop_sequence (>->tlb.seqno); -} - -static inline u32 intel_gt_next_invalidate_tlb_full (const struct intel_gt *gt) -{ -return intel_gt_tlb_seqno (gt) |1 ; -} - -void intel_gt_invalidate_tlb (struct intel_gt *gt,u32 seqno); -#endif /* __INTEL_GT_H__ */ drivers/gpu/drm/i915/gt/intel_tlb.c new file +183
-0@@ -0,0 +1,183 @@ +// SPDX-License-Identifier: MIT +/* +* Copyright © 2022 Intel Corporation +*/ + +#include "i915_drv.h" +#include "i915_perf_oa_regs.h" +#include "intel_engine_pm.h" +#include "intel_gt.h" +#include "intel_gt_pm.h" +#include "intel_gt_regs.h" +#include "intel_tlb.h" + +struct reg_and_bit { +i915_reg_t reg; +u32 bit; +}; + +static struct reg_and_bit +get_reg_and_bit (const struct intel_engine_cs *engine,const bool gen8, +const i915_reg_t *regs,const unsigned int num) +{ +const unsigned int class = engine->class; +struct reg_and_bit rb = { }; + +if (drm_WARN_ON_ONCE (&engine->i915->drm, + class >= num || !regs[class].reg)) +return rb; + + rb.reg = regs[class]; +if (gen8 && class ==VIDEO_DECODE_CLASS ) + rb.reg.reg +=4 * engine->instance;/* GEN8_M2TCR */ +else + rb.bit = engine->instance; + + rb.bit =BIT (rb.bit); + +return rb; +} + +static bool tlb_seqno_passed (const struct intel_gt *gt,u32 seqno) +{ +u32 cur =intel_gt_tlb_seqno (gt); + +/* Only skip if a *full* TLB invalidate barrier has passed */ +return (s32)(cur -ALIGN (seqno,2 )) >0 ; +} + +static void mmio_invalidate_full (struct intel_gt *gt) +{ +static const i915_reg_t gen8_regs[] = { + [RENDER_CLASS ] =GEN8_RTCR , + [VIDEO_DECODE_CLASS ] =GEN8_M1TCR ,/* , GEN8_M2TCR */ + [VIDEO_ENHANCEMENT_CLASS ] =GEN8_VTCR , + [COPY_ENGINE_CLASS ] =GEN8_BTCR , + }; +static const i915_reg_t gen12_regs[] = { + [RENDER_CLASS ] =GEN12_GFX_TLB_INV_CR , + [VIDEO_DECODE_CLASS ] =GEN12_VD_TLB_INV_CR , + [VIDEO_ENHANCEMENT_CLASS ] =GEN12_VE_TLB_INV_CR , + [COPY_ENGINE_CLASS ] =GEN12_BLT_TLB_INV_CR , + [COMPUTE_CLASS ] =GEN12_COMPCTX_TLB_INV_CR , + }; +struct drm_i915_private *i915 = gt->i915; +struct intel_uncore *uncore = gt->uncore; +struct intel_engine_cs *engine; +intel_engine_mask_t awake, tmp; +enum intel_engine_id id; +const i915_reg_t *regs; +unsigned int num =0 ; + +if (GRAPHICS_VER (i915) ==12 ) { + regs = gen12_regs; + num =ARRAY_SIZE (gen12_regs); + }else if (GRAPHICS_VER (i915) >=8 &&GRAPHICS_VER (i915) <=11 ) { + regs = gen8_regs; + num =ARRAY_SIZE (gen8_regs); + }else if (GRAPHICS_VER (i915) <8 ) { +return ; + } + +if (drm_WARN_ONCE (&i915->drm, !num, +"Platform does not implement TLB invalidation!" )) +return ; + +intel_uncore_forcewake_get (uncore,FORCEWAKE_ALL ); + +spin_lock_irq (&uncore->lock);/* serialise invalidate with GT reset */ + + awake =0 ; +for_each_engine (engine, gt, id) { +struct reg_and_bit rb; + +if (!intel_engine_pm_is_awake (engine)) +continue ; + + rb =get_reg_and_bit (engine, regs == gen8_regs, regs, num); +if (!i915_mmio_reg_offset (rb.reg)) +continue ; + +intel_uncore_write_fw (uncore, rb.reg, rb.bit); + awake |= engine->mask; + } + +GT_TRACE (gt,"invalidated engines %08x\n" , awake); + +/* Wa_2207587034:tgl,dg1,rkl,adl-s,adl-p */ +if (awake && + (IS_TIGERLAKE (i915) || +IS_DG1 (i915) || +IS_ROCKETLAKE (i915) || +IS_ALDERLAKE_S (i915) || +IS_ALDERLAKE_P (i915))) +intel_uncore_write_fw (uncore,GEN12_OA_TLB_INV_CR ,1 ); + +spin_unlock_irq (&uncore->lock); + +for_each_engine_masked (engine, gt, awake, tmp) { +struct reg_and_bit rb; + +/* +* HW architecture suggest typical invalidation time at 40us, +* with pessimistic cases up to 100us and a recommendation to +* cap at 1ms. We go a bit higher just in case. +*/ +const unsigned int timeout_us =100 ; +const unsigned int timeout_ms =4 ; + + rb =get_reg_and_bit (engine, regs == gen8_regs, regs, num); +if (__intel_wait_for_register_fw (uncore, + rb.reg, rb.bit,0 , + timeout_us, timeout_ms, +NULL )) +drm_err_ratelimited (>->i915->drm, +"%s TLB invalidation did not complete in %ums!\n" , + engine->name, timeout_ms); + } + +/* +* Use delayed put since a) we mostly expect a flurry of TLB +* invalidations so it is good to avoid paying the forcewake cost and +* b) it works around a bug in Icelake which cannot cope with too rapid +* transitions. +*/ +intel_uncore_forcewake_put_delayed (uncore,FORCEWAKE_ALL ); +} + +void intel_gt_invalidate_tlb_full (struct intel_gt *gt,u32 seqno) +{ +intel_wakeref_t wakeref; + +if (I915_SELFTEST_ONLY (gt->awake == -ENODEV )) +return ; + +if (intel_gt_is_wedged (gt)) +return ; + +if (tlb_seqno_passed (gt, seqno)) +return ; + + with_intel_gt_pm_if_awake(gt, wakeref) { +mutex_lock (>->tlb.invalidate_lock); +if (tlb_seqno_passed (gt, seqno)) + goto unlock; + +mmio_invalidate_full (gt); + +write_seqcount_invalidate (>->tlb.seqno); +unlock: +mutex_unlock (>->tlb.invalidate_lock); + } +} + +void intel_gt_init_tlb (struct intel_gt *gt) +{ +mutex_init (>->tlb.invalidate_lock); +seqcount_mutex_init (>->tlb.seqno, >->tlb.invalidate_lock); +} + +void intel_gt_fini_tlb (struct intel_gt *gt) +{ +mutex_destroy (>->tlb.invalidate_lock); +}drivers/gpu/drm/i915/gt/intel_tlb.h new file +29
-0@@ -0,0 +1,29 @@ +/* SPDX-License-Identifier: MIT */ +/* +* Copyright © 2022 Intel Corporation +*/ + +#ifndef INTEL_TLB_H +#define INTEL_TLB_H + +#include <linux/seqlock.h> +#include <linux/types.h> + +#include "intel_gt_types.h" + +void intel_gt_invalidate_tlb_full (struct intel_gt *gt,u32 seqno); + +void intel_gt_init_tlb (struct intel_gt *gt); +void intel_gt_fini_tlb (struct intel_gt *gt); + +static inline u32 intel_gt_tlb_seqno (const struct intel_gt *gt) +{ +return seqprop_sequence (>->tlb.seqno); +} + +static inline u32 intel_gt_next_invalidate_tlb_full (const struct intel_gt *gt) +{ +return intel_gt_tlb_seqno (gt) |1 ; +} + +#endif /* INTEL_TLB_H */ drivers/gpu/drm/i915/i915_vma.c +1
-0@@ -33,6 +33,7 @@#include "gt/intel_engine_heartbeat.h" #include "gt/intel_gt.h" #include "gt/intel_gt_requests.h" +#include "gt/intel_tlb.h" #include "i915_drv.h" #include "i915_gem_evict.h" Signature · 1 line
2.36.1
Re: [PATCH v2 1/2] drm/i915/gt: Move TLB invalidation to its own file
In reply to Mauro Carvalho ChehabHi Mauro,
Quoted 8 lines · Mauro Carvalho Chehab
From: Chris Wilson <[email protected]>
Prepare for supporting more TLB invalidation scenarios by moving the current MMIO invalidation to its own file.
Signed-off-by Chris Wilson <[email protected]>Cc Fei Yang <[email protected]>Signed-off-by Mauro Carvalho Chehab <[email protected]>
I already reviewed this patch... anyway I checked it again and it's all correct.
Thanks,
Andi
PATCH v2 2/2 drm/i915/gt: document TLB cache invalidation functions
In reply to Mauro Carvalho ChehabAdd a description for the TLB cache invalidation algorithm and for the related kAPI functions.
---
To avoid mailbombing on a large number of people, only mailing lists were C/C on the cover. See [PATCH v2 0/2] at: https://lore.kernel.org/all/[email protected]/
Documentation/gpu/i915.rst | 7 ++ drivers/gpu/drm/i915/gt/intel_tlb.c | 25 +++++++ drivers/gpu/drm/i915/gt/intel_tlb.h | 101 ++++++++++++++++++++++++++++ 3 files changed, 133 insertions(+)
Documentation/gpu/i915.rst +7 -0
@@ -58,6 +58,13 @@ Intel GVT-g Host Support(vGPU device model) .. kernel-doc:: drivers/gpu/drm/i915/intel_gvt.c :internal: +TLB cache invalidation +---------------------- + +.. kernel-doc:: drivers/gpu/drm/i915/gt/intel_tlb.h + +.. kernel-doc:: drivers/gpu/drm/i915/gt/intel_tlb.c + Workarounds -----------
drivers/gpu/drm/i915/gt/intel_tlb.c +25 -0
@@ -145,6 +145,18 @@ static void mmio_invalidate_full(struct intel_gt *gt)intel_uncore_forcewake_put_delayed (uncore,FORCEWAKE_ALL ); } +/** +* intel_gt_invalidate_tlb_full - do full TLB cache invalidation +* @gt: GT structure +* @seqno: sequence number +* +* Do a full TLB cache invalidation if the @seqno is bigger than the last +* full TLB cache invalidation. +* +* Note: +* The TLB cache invalidation logic depends on GEN-specific registers. +* It currently supports MMIO-based TLB flush for GEN8 to GEN12. +*/ void intel_gt_invalidate_tlb_full (struct intel_gt *gt,u32 seqno) {intel_wakeref_t wakeref;
@@ -171,12 +183,25 @@ void intel_gt_invalidate_tlb_full(struct intel_gt *gt, u32 seqno) } } +/** +* intel_gt_init_tlb - initialize TLB-specific vars +* @gt: GT structure +* +* TLB cache invalidation logic internally uses some resources that require +* initialization. Should be called before doing any TLB cache invalidation. +*/ void intel_gt_init_tlb (struct intel_gt *gt) {mutex_init (>->tlb.invalidate_lock);seqcount_mutex_init (>->tlb.seqno, >->tlb.invalidate_lock); } +/** +* intel_gt_fini_tlb - initialize TLB-specific vars +* @gt: GT structure +* +* Frees any resources needed by TLB cache invalidation logic. +*/ void intel_gt_fini_tlb (struct intel_gt *gt) {mutex_destroy (>->tlb.invalidate_lock);
drivers/gpu/drm/i915/gt/intel_tlb.h +101 -0
117 lines not on this page · raw message
Signature · 1 line
2.36.1
Re: [Intel-gfx] [PATCH v2 2/2] drm/i915/gt: document TLB cache invalidation functions
Quoted 64 lines · Mauro Carvalho Chehab
Add a description for the TLB cache invalidation algorithm and for the related kAPI functions.
Signed-off-by Mauro Carvalho Chehab <[email protected]>---
To avoid mailbombing on a large number of people, only mailing lists were C/C on the cover. See [PATCH v2 0/2] at: https://lore.kernel.org/all/[email protected]/
Documentation/gpu/i915.rst | 7 ++ drivers/gpu/drm/i915/gt/intel_tlb.c | 25 +++++++ drivers/gpu/drm/i915/gt/intel_tlb.h | 101 ++++++++++++++++++++++++++++ 3 files changed, 133 insertions(+)Documentation/gpu/i915.rst +0
-0@@ -58,6 +58,13 @@ Intel GVT-g Host Support(vGPU device model).. kernel-doc::
drivers/gpu/drm/i915/intel_gvt.c
:internal:Documentation/gpu/i915.rst +7
-0+TLB cache invalidation +---------------------- + +.. kernel-doc:: drivers/gpu/drm/i915/gt/intel_tlb.h + +.. kernel-doc:: drivers/gpu/drm/i915/gt/intel_tlb.c +Workarounds
-----------drivers/gpu/drm/i915/gt/intel_tlb.c +17
-0@@ -145,6 +145,18 @@ static void mmio_invalidate_full(struct intel_gt *gt)intel_uncore_forcewake_put_delayed (uncore,FORCEWAKE_ALL ); } +/** +* intel_gt_invalidate_tlb_full - do full TLB cache invalidation +* @gt: GT structure +* @seqno: sequence number +* +* Do a full TLB cache invalidation if the @seqno is bigger than the last +* full TLB cache invalidation. +* +* Note: +* The TLB cache invalidation logic depends on GEN-specific registers. +* It currently supports MMIO-based TLB flush for GEN8 to GEN12. +*/ void intel_gt_invalidate_tlb_full (struct intel_gt *gt,u32 seqno) {intel_wakeref_t wakeref;@@ -171,12 +183,25 @@ void intel_gt_invalidate_tlb_full(struct intel_gt *gt, u32 seqno) } } +/** +* intel_gt_init_tlb - initialize TLB-specific vars +* @gt: GT structure +* +* TLB cache invalidation logic internally uses some resources that require
drivers/gpu/drm/i915/gt/intel_tlb.c void intel_gt_invalidate_tlb_full(struct intel_gt *gt, u32 seqno) · line 200
Quoted 10 lines
drivers/gpu/drm/i915/gt/intel_tlb.c +4
-0+* initialization. Should be called before doing any TLB cache invalidation. +*/ void intel_gt_init_tlb (struct intel_gt *gt) {mutex_init (>->tlb.invalidate_lock);seqcount_mutex_init (>->tlb.seqno, >->tlb.invalidate_lock); } +/** +* intel_gt_fini_tlb - initialize TLB-specific vars
Free TLB-specific vars
Quoted 44 lines
drivers/gpu/drm/i915/gt/intel_tlb.c +4
-0+* @gt: GT structure +* +* Frees any resources needed by TLB cache invalidation logic. +*/ void intel_gt_fini_tlb (struct intel_gt *gt) {mutex_destroy (>->tlb.invalidate_lock);drivers/gpu/drm/i915/gt/intel_tlb.h +29
-0@@ -11,16 +11,117 @@#include "intel_gt_types.h" +/** +* DOC: TLB cache invalidation logic +* +* The way the current algorithm works is that a struct drm_i915_gem_object can +* be created on any order. At unbind/evict time, the object is warranted that +* it won't be used anymore. So, a sequence number provided by +* intel_gt_next_invalidate_tlb_full() is stored on it. This can happen either +* at __vma_put_pages() - for VMA sync unbind, or at ppgtt_unbind_vma() - for +* VMA async VMA bind. +* +* At __i915_gem_object_unset_pages(), intel_gt_invalidate_tlb_full() is called, +* where it checks if the sequence number of the object was already invalidated +* or not. If not, it flushes the TLB and increments the sequence number:: +* +* void intel_gt_invalidate_tlb_full(struct intel_gt *gt, u32 seqno) +* { +* ... +* with_intel_gt_pm_if_awake(gt, wakeref) { +* mutex_lock(>->tlb.invalidate_lock); +* if (tlb_seqno_passed(gt, seqno)) +* goto unlock; +* +* // Some code to do TLB invalidation +* ... +* +* write_seqcount_invalidate(>->tlb.seqno); // increment seqno +* mutex_lock(>->tlb.invalidate_lock); +* } +*
drivers/gpu/drm/i915/gt/intel_tlb.h line 52
Quoted 10 lines
drivers/gpu/drm/i915/gt/intel_tlb.h +10
-0+* So, let's say the current seqno is 2 and 3 new objects were created, +* on this order:: +* +* obj1 +* obj2 +* obj3 +* +* They can be unbind/evict on a different order. At unbind/evict time, +* the mm.tlb will be stamped with the sequence number, using the number +* from the last TLB flush, plus 1.
I am trying to get my head around the below function.
void vma_invalidate_tlb(struct i915_address_space *vm, u32 tlb)
{
WRITE_ONCE(tlb, intel_gt_next_invalidate_tlb_full(vm->gt));
}Though we pass obj->mm.tlb for 'tlb' while calling this function, aren't we writing to local 'tlb' variable here instead of obj->mm.tlb?
drivers/gpu/drm/i915/gt/intel_tlb.h line 55
Quoted 3 lines
drivers/gpu/drm/i915/gt/intel_tlb.h +3
-0+* +* Different threads may be used on unbind/evict and/or unset pages. +* As the logic at void intel_gt_invalidate_tlb_full() is protected by a mutex,
May be we can skip 'void' and just keep function name here.
Quoted 42 lines
drivers/gpu/drm/i915/gt/intel_tlb.h +42
-0+* for simplicity, let's consider just two threads: +* +* +-------------------+-------------------------+---------------------------------+ +* | sequence number | Thread 0 | Thread 1 + +* +===================+=========================+=================================+ +* | seqno=2 | | | +* | +-------------------------+---------------------------------+ +* | | unbind/evict obj3. | | +* | | | | +* | | obj3.mm.tlb = seqno | 1 | | +* | | // obj3.mm.tlb = 3 | | +* | +-------------------------+---------------------------------+ +* | | unbind/evict obj1. | | +* | | | | +* | | obj1.mm.tlb = seqno | 1 | | +* | | // obj1.mm.tlb = 3 | | +* | +-------------------------+---------------------------------+ +* | | | __i915_gem_object_unset_pages() | +* | | | called for obj3 => TLB flush | +* | | | invalidating both obj1 and obj2.| +* | | | | +* | | | seqno += 2 | +* +-------------------+-------------------------+---------------------------------+ +* | seqno=4 | | | +* | +-------------------------+---------------------------------+ +* | | unbind/evict obj2. | | +* | | | | +* | | obj2.mm.tlb = seqno | 1 | | +* | | // obj2.mm.tlb = 5 | | +* | +-------------------------+---------------------------------+ +* | | | __i915_gem_object_unset_pages() | +* | | | called for obj1, don't flush | +* | | | as past flush invalidated obj1. | +* | +-------------------------+---------------------------------+ +* | | | __i915_gem_object_unset_pages() | +* | | | called for obj2 => TLB flush. | +* | | | invalidating obj2. | +* | | | | +* | | | seqno += 2 | +* +-------------------+-------------------------+---------------------------------+ +* | seqno=6 | | | +* +-------------------+-------------------------+---------------------------------+
drivers/gpu/drm/i915/gt/intel_tlb.h line 107
Quoted 10 lines
drivers/gpu/drm/i915/gt/intel_tlb.h +5
-0+*/ +void intel_gt_invalidate_tlb_full (struct intel_gt *gt,u32 seqno);void intel_gt_init_tlb (struct intel_gt *gt);void intel_gt_fini_tlb (struct intel_gt *gt); +/** +* intel_gt_tlb_seqno - Returns the current TLB invlidation sequence number +*
Probably this empty comment line needs to be removed before the parameter description below?
drivers/gpu/drm/i915/gt/intel_tlb.h line 120
Quoted 13 lines
drivers/gpu/drm/i915/gt/intel_tlb.h +8
-0+* @gt: GT structure +* +* There's no need to lock while calling it, as seqprop_sequence is thread-safe +*/ static inline u32 intel_gt_tlb_seqno (const struct intel_gt *gt) {return seqprop_sequence (>->tlb.seqno); } +/** +* intel_gt_next_invalidate_tlb_full - Returns the next TLB full invalidation +* sequence number +*
Same here.
-Niranjana
Quoted 10 lines
drivers/gpu/drm/i915/gt/intel_tlb.h +4
-0+* @gt: GT structure +* +* There's no need to lock while calling it, as seqprop_sequence is thread-safe +*/ static inline u32 intel_gt_next_invalidate_tlb_full (const struct intel_gt *gt) {return intel_gt_tlb_seqno (gt) |1 ;Signature · 1 line
2.36.1
Re: [Intel-gfx] [PATCH v2 2/2] drm/i915/gt: document TLB cache invalidation functions
Quoted 73 lines · On Tue, 2 Aug 2022 15:30:44 -0700 Niranjana Vishwanathapura…
Quoted 72 lines · Mauro Carvalho Chehab
Add a description for the TLB cache invalidation algorithm and for the related kAPI functions.
Signed-off-by Mauro Carvalho Chehab <[email protected]>---
To avoid mailbombing on a large number of people, only mailing lists were C/C on the cover. See [PATCH v2 0/2] at: https://lore.kernel.org/all/[email protected]/
Documentation/gpu/i915.rst | 7 ++ drivers/gpu/drm/i915/gt/intel_tlb.c | 25 +++++++ drivers/gpu/drm/i915/gt/intel_tlb.h | 101 ++++++++++++++++++++++++++++ 3 files changed, 133 insertions(+)Documentation/gpu/i915.rst +0
-0@@ -58,6 +58,13 @@ Intel GVT-g Host Support(vGPU device model).. kernel-doc::
drivers/gpu/drm/i915/intel_gvt.c
:internal:Documentation/gpu/i915.rst +7
-0+TLB cache invalidation +---------------------- + +.. kernel-doc:: drivers/gpu/drm/i915/gt/intel_tlb.h + +.. kernel-doc:: drivers/gpu/drm/i915/gt/intel_tlb.c +Workarounds
-----------drivers/gpu/drm/i915/gt/intel_tlb.c +19
-0@@ -145,6 +145,18 @@ static void mmio_invalidate_full(struct intel_gt *gt)intel_uncore_forcewake_put_delayed (uncore,FORCEWAKE_ALL ); } +/** +* intel_gt_invalidate_tlb_full - do full TLB cache invalidation +* @gt: GT structure +* @seqno: sequence number +* +* Do a full TLB cache invalidation if the @seqno is bigger than the last +* full TLB cache invalidation. +* +* Note: +* The TLB cache invalidation logic depends on GEN-specific registers. +* It currently supports MMIO-based TLB flush for GEN8 to GEN12. +*/ void intel_gt_invalidate_tlb_full (struct intel_gt *gt,u32 seqno) {intel_wakeref_t wakeref;@@ -171,12 +183,25 @@ void intel_gt_invalidate_tlb_full(struct intel_gt *gt, u32 seqno) } } +/** +* intel_gt_init_tlb - initialize TLB-specific vars +* @gt: GT structure +* +* TLB cache invalidation logic internally uses some resources that require +* initialization. Should be called before doing any TLB cache invalidation. +*/ void intel_gt_init_tlb (struct intel_gt *gt) {mutex_init (>->tlb.invalidate_lock);seqcount_mutex_init (>->tlb.seqno, >->tlb.invalidate_lock); }
Quoted 4 lines
drivers/gpu/drm/i915/gt/intel_tlb.c void intel_gt_invalidate_tlb_full(struct intel_gt *gt, u32 seqno) · line 200
Quoted 2 lines
drivers/gpu/drm/i915/gt/intel_tlb.c +2
-0+/** +* intel_gt_fini_tlb - initialize TLB-specific vars Free TLB-specific vars
OK.
Quoted 58 lines
Quoted 45 lines
drivers/gpu/drm/i915/gt/intel_tlb.c +4
-0+* @gt: GT structure +* +* Frees any resources needed by TLB cache invalidation logic. +*/ void intel_gt_fini_tlb (struct intel_gt *gt) {mutex_destroy (>->tlb.invalidate_lock);drivers/gpu/drm/i915/gt/intel_tlb.h +29
-0@@ -11,16 +11,117 @@#include "intel_gt_types.h" +/** +* DOC: TLB cache invalidation logic +* +* The way the current algorithm works is that a struct drm_i915_gem_object can +* be created on any order. At unbind/evict time, the object is warranted that +* it won't be used anymore. So, a sequence number provided by +* intel_gt_next_invalidate_tlb_full() is stored on it. This can happen either +* at __vma_put_pages() - for VMA sync unbind, or at ppgtt_unbind_vma() - for +* VMA async VMA bind. +* +* At __i915_gem_object_unset_pages(), intel_gt_invalidate_tlb_full() is called, +* where it checks if the sequence number of the object was already invalidated +* or not. If not, it flushes the TLB and increments the sequence number:: +* +* void intel_gt_invalidate_tlb_full(struct intel_gt *gt, u32 seqno) +* { +* ... +* with_intel_gt_pm_if_awake(gt, wakeref) { +* mutex_lock(>->tlb.invalidate_lock); +* if (tlb_seqno_passed(gt, seqno)) +* goto unlock; +* +* // Some code to do TLB invalidation +* ... +* +* write_seqcount_invalidate(>->tlb.seqno); // increment seqno +* mutex_lock(>->tlb.invalidate_lock); +* } +* drivers/gpu/drm/i915/gt/intel_tlb.h line 52
Quoted 10 lines
drivers/gpu/drm/i915/gt/intel_tlb.h +10
-0+* So, let's say the current seqno is 2 and 3 new objects were created, +* on this order:: +* +* obj1 +* obj2 +* obj3 +* +* They can be unbind/evict on a different order. At unbind/evict time, +* the mm.tlb will be stamped with the sequence number, using the number +* from the last TLB flush, plus 1. I am trying to get my head around the below function.
Quoted 7 lines
void
vma_invalidate_tlb(struct i915_address_space *vm, u32 tlb){ WRITE_ONCE(tlb, intel_gt_next_invalidate_tlb_full(vm->gt)); }Though we pass
obj->mm.tlbfor 'tlb' while calling this function, aren't we writing to local 'tlb' variable here instead ofobj->mm.tlb?
It should be passing a pointer. I wrote such fix after a review, but somehow it ended getting lost. I'll send the fix at v3.
Quoted 5 lines
drivers/gpu/drm/i915/gt/intel_tlb.h line 55
Quoted 3 lines
drivers/gpu/drm/i915/gt/intel_tlb.h +3
-0+* +* Different threads may be used on unbind/evict and/or unset pages. +* As the logic at void intel_gt_invalidate_tlb_full() is protected by a mutex, May be we can skip 'void' and just keep function name here.
Sure.
Quoted 49 lines
Quoted 49 lines
drivers/gpu/drm/i915/gt/intel_tlb.h +44
-0+* for simplicity, let's consider just two threads: +* +* +-------------------+-------------------------+---------------------------------+ +* | sequence number | Thread 0 | Thread 1 + +* +===================+=========================+=================================+ +* | seqno=2 | | | +* | +-------------------------+---------------------------------+ +* | | unbind/evict obj3. | | +* | | | | +* | | obj3.mm.tlb = seqno | 1 | | +* | | // obj3.mm.tlb = 3 | | +* | +-------------------------+---------------------------------+ +* | | unbind/evict obj1. | | +* | | | | +* | | obj1.mm.tlb = seqno | 1 | | +* | | // obj1.mm.tlb = 3 | | +* | +-------------------------+---------------------------------+ +* | | | __i915_gem_object_unset_pages() | +* | | | called for obj3 => TLB flush | +* | | | invalidating both obj1 and obj2.| +* | | | | +* | | | seqno += 2 | +* +-------------------+-------------------------+---------------------------------+ +* | seqno=4 | | | +* | +-------------------------+---------------------------------+ +* | | unbind/evict obj2. | | +* | | | | +* | | obj2.mm.tlb = seqno | 1 | | +* | | // obj2.mm.tlb = 5 | | +* | +-------------------------+---------------------------------+ +* | | | __i915_gem_object_unset_pages() | +* | | | called for obj1, don't flush | +* | | | as past flush invalidated obj1. | +* | +-------------------------+---------------------------------+ +* | | | __i915_gem_object_unset_pages() | +* | | | called for obj2 => TLB flush. | +* | | | invalidating obj2. | +* | | | | +* | | | seqno += 2 | +* +-------------------+-------------------------+---------------------------------+ +* | seqno=6 | | | +* +-------------------+-------------------------+---------------------------------+ +*/ +void intel_gt_invalidate_tlb_full (struct intel_gt *gt,u32 seqno);void intel_gt_init_tlb (struct intel_gt *gt);void intel_gt_fini_tlb (struct intel_gt *gt);
Quoted 6 lines
drivers/gpu/drm/i915/gt/intel_tlb.h line 107
Quoted 3 lines
drivers/gpu/drm/i915/gt/intel_tlb.h +3
-0+/** +* intel_gt_tlb_seqno - Returns the current TLB invlidation sequence number +* Probably this empty comment line needs to be removed before the parameter description below?
Kernel-doc actually accepts both with or without a blank line. My personal preference is to place a blank line, because sometimes the function description plus function name is bigger than one line. So, it is usually clearer when adding a blank line than doing something like this (perfectly valid kerneldoc markup):
/**
* long_function_name_foo - Lorem ipsum dolor sit amet, consectetur
* adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore.
* @bar: some parameter
* ...
But yeah, kernel-doc documentation example doesn't have a blank line. So, I'll drop it.
Quoted 10 lines
Quoted 10 lines
drivers/gpu/drm/i915/gt/intel_tlb.h +4
-0+* @gt: GT structure +* +* There's no need to lock while calling it, as seqprop_sequence is thread-safe +*/ static inline u32 intel_gt_tlb_seqno (const struct intel_gt *gt) {return seqprop_sequence (>->tlb.seqno); }
Quoted 19 lines
drivers/gpu/drm/i915/gt/intel_tlb.h line 120
Quoted 4 lines
drivers/gpu/drm/i915/gt/intel_tlb.h +4
-0+/** +* intel_gt_next_invalidate_tlb_full - Returns the next TLB full invalidation +* sequence number +* Same here.
-Niranjana
Quoted 10 lines
drivers/gpu/drm/i915/gt/intel_tlb.h +4
-0+* @gt: GT structure +* +* There's no need to lock while calling it, as seqprop_sequence is thread-safe +*/ static inline u32 intel_gt_next_invalidate_tlb_full (const struct intel_gt *gt) {return intel_gt_tlb_seqno (gt) |1 ;Signature · 1 line
2.36.1
Thanks!
Mauro
Patchwork
CI[Intel-gfx] ✗ Fi.CI.BUILD: failure for Move TLB invalidation code for its own file and document it (rev2)
In reply to Mauro Carvalho Chehab== Series Details ==
== Series Details ==
Series: Move TLB invalidation code for its own file and document it (rev2)
URL : https://patchwork.freedesktop.org/series/106805/
State : failure
== Summary ==
Error: patch https://patchwork.freedesktop.org/api/1.0/series/106805/revisions/2/mbox/ not applied
Applying: drm/i915/gt: Move TLB invalidation to its own file
Using index info to reconstruct a base tree...
M drivers/gpu/drm/i915/gem/i915_gem_pages.c
M drivers/gpu/drm/i915/gt/intel_gt.c
M drivers/gpu/drm/i915/gt/intel_gt.h
M drivers/gpu/drm/i915/i915_vma.c
Falling back to patching base and 3-way merge...
Auto-merging drivers/gpu/drm/i915/i915_vma.c
Auto-merging drivers/gpu/drm/i915/gt/intel_gt.h
CONFLICT (content): Merge conflict in drivers/gpu/drm/i915/gt/intel_gt.h Auto-merging drivers/gpu/drm/i915/gt/intel_gt.c
CONFLICT (content): Merge conflict in drivers/gpu/drm/i915/gt/intel_gt.c Auto-merging drivers/gpu/drm/i915/gem/i915_gem_pages.c
CONFLICT (content): Merge conflict in drivers/gpu/drm/i915/gem/i915_gem_pages.c
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 drm/i915/gt: Move TLB invalidation to its own file
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
Patchwork
CI[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Move TLB invalidation code for its own file and document it (rev3)
In reply to Mauro Carvalho Chehab== Series Details ==
== Series Details ==
Series: Move TLB invalidation code for its own file and document it (rev3)
URL : https://patchwork.freedesktop.org/series/106805/
State : warning
== Summary ==
Error: dim checkpatch failed6e8221ff3e55 drm/i915/gt: Move TLB invalidation to its own file
Traceback (most recent call last):
File "scripts/spdxcheck.py", line 11, in <module>
import git
ModuleNotFoundError: No module named 'git'
Traceback (most recent call last):
File "scripts/spdxcheck.py", line 11, in <module>
import git
ModuleNotFoundError: No module named 'git'
-:274: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does MAINTAINERS need updating? #274:
new file mode 100644
total: 0 errors, 1 warnings, 0 checks, 294 lines checked b5743e507945 drm/i915/gt: document TLB cache invalidation functions -:103: WARNING:SPACE_BEFORE_TAB: please, no space before tabs #103: FILE: drivers/gpu/drm/i915/gt/intel_tlb.h:31:
+ * ^Iwith_intel_gt_pm_if_awake(gt, wakeref) {$
-:104: WARNING:SPACE_BEFORE_TAB: please, no space before tabs #104: FILE: drivers/gpu/drm/i915/gt/intel_tlb.h:32:
+ * ^I^Imutex_lock(>->tlb.invalidate_lock);$
-:105: WARNING:SPACE_BEFORE_TAB: please, no space before tabs #105: FILE: drivers/gpu/drm/i915/gt/intel_tlb.h:33:
+ * ^I^Iif (tlb_seqno_passed(gt, seqno))$
-:106: WARNING:SPACE_BEFORE_TAB: please, no space before tabs #106: FILE: drivers/gpu/drm/i915/gt/intel_tlb.h:34:
+ * ^I^I^I^Igoto unlock;$
-:108: WARNING:SPACE_BEFORE_TAB: please, no space before tabs #108: FILE: drivers/gpu/drm/i915/gt/intel_tlb.h:36:
+ * ^I^I// Some code to do TLB invalidation$
-:111: WARNING:SPACE_BEFORE_TAB: please, no space before tabs #111: FILE: drivers/gpu/drm/i915/gt/intel_tlb.h:39:
+ * ^I^Iwrite_seqcount_invalidate(>->tlb.seqno); // increment seqno$
-:112: WARNING:SPACE_BEFORE_TAB: please, no space before tabs #112: FILE: drivers/gpu/drm/i915/gt/intel_tlb.h:40:
+ * ^I^Imutex_lock(>->tlb.invalidate_lock);$
-:118: WARNING:SPACE_BEFORE_TAB: please, no space before tabs #118: FILE: drivers/gpu/drm/i915/gt/intel_tlb.h:46:
+ * ^Iobj1$
-:119: WARNING:SPACE_BEFORE_TAB: please, no space before tabs #119: FILE: drivers/gpu/drm/i915/gt/intel_tlb.h:47:
+ * ^Iobj2$
-:120: WARNING:SPACE_BEFORE_TAB: please, no space before tabs #120: FILE: drivers/gpu/drm/i915/gt/intel_tlb.h:48:
+ * ^Iobj3$
total: 0 errors, 10 warnings, 0 checks, 173 lines checked
Patchwork
CI[Intel-gfx] ✗ Fi.CI.SPARSE: warning for Move TLB invalidation code for its own file and document it (rev3)
In reply to Mauro Carvalho Chehab== Series Details ==
== Series Details ==
Series: Move TLB invalidation code for its own file and document it (rev3)
URL : https://patchwork.freedesktop.org/series/106805/
State : warning
== Summary ==
Error: dim sparse failed
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
Patchwork
CI[Intel-gfx] ✓ Fi.CI.BAT: success for Move TLB invalidation code for its own file and document it (rev3)
In reply to Mauro Carvalho Chehab== Series Details ==
== Series Details ==
Series: Move TLB invalidation code for its own file and document it (rev3)
URL : https://patchwork.freedesktop.org/series/106805/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_11960 -> Patchwork_106805v3
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/index.html
Participating hosts (43 -> 40)
------------------------------
Additional (1): bat-jsl-3
Missing (4): fi-ctg-p8600 bat-dg2-9 fi-bdw-samus fi-hsw-4200u
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_106805v3:
### IGT changes ###
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses. They do not affect the overall result.
* igt@i915_selftest@live@gt_mocs:
- {bat-adlp-6}: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/bat-adlp-6/igt@i915_selftest@live@gt_mocs.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/bat-adlp-6/igt@i915_selftest@live@gt_mocs.html
* igt@i915_selftest@live@hugepages:
- {bat-rplp-1}: [PASS][3] -> [DMESG-WARN][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/bat-rplp-1/igt@i915_selftest@[email protected]
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/bat-rplp-1/igt@i915_selftest@[email protected]
Known issues
------------
Here are the changes found in Patchwork_106805v3 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_selftest@live@gem:
- fi-blb-e6850: NOTRUN -> [DMESG-FAIL][5] ([i915#4528])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/fi-blb-e6850/igt@i915_selftest@[email protected]
* igt@i915_selftest@live@gt_engines:
- bat-dg1-6: [PASS][6] -> [INCOMPLETE][7] ([i915#4418])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/bat-dg1-6/igt@i915_selftest@live@gt_engines.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/bat-dg1-6/igt@i915_selftest@live@gt_engines.html
* igt@i915_suspend@basic-s2idle-without-i915:
- fi-bdw-gvtdvm: NOTRUN -> [INCOMPLETE][8] ([i915#4817])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/fi-bdw-gvtdvm/igt@[email protected]
* igt@i915_suspend@basic-s3-without-i915:
- fi-bdw-5557u: [PASS][9] -> [INCOMPLETE][10] ([i915#146])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/fi-bdw-5557u/igt@[email protected]
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/fi-bdw-5557u/igt@[email protected]
* igt@kms_chamelium@common-hpd-after-suspend:
- fi-hsw-4770: NOTRUN -> [SKIP][11] ([fdo#109271] / [fdo#111827])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/fi-hsw-4770/igt@[email protected]
#### Possible fixes ####
* igt@gem_lmem_swapping@random-engines@lmem0:
- {bat-dg2-8}: [INCOMPLETE][12] ([i915#5763]) -> [PASS][13]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/bat-dg2-8/igt@gem_lmem_swapping@[email protected]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/bat-dg2-8/igt@gem_lmem_swapping@[email protected]
* igt@i915_selftest@live@execlists:
- fi-bdw-gvtdvm: [INCOMPLETE][14] ([i915#2940]) -> [PASS][15]
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/fi-bdw-gvtdvm/igt@i915_selftest@[email protected]
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/fi-bdw-gvtdvm/igt@i915_selftest@[email protected]
* igt@i915_selftest@live@hangcheck:
- fi-hsw-4770: [INCOMPLETE][16] ([i915#4785]) -> [PASS][17]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/fi-hsw-4770/igt@i915_selftest@[email protected]
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/fi-hsw-4770/igt@i915_selftest@[email protected]
* igt@i915_selftest@live@requests:
- fi-blb-e6850: [DMESG-FAIL][18] ([i915#4528]) -> [PASS][19]
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/fi-blb-e6850/igt@i915_selftest@[email protected]
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/fi-blb-e6850/igt@i915_selftest@[email protected]
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[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#2940]: https://gitlab.freedesktop.org/drm/intel/issues/2940
[i915#3003]: https://gitlab.freedesktop.org/drm/intel/issues/3003
[i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
[i915#4418]: https://gitlab.freedesktop.org/drm/intel/issues/4418
[i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4785]: https://gitlab.freedesktop.org/drm/intel/issues/4785
[i915#4817]: https://gitlab.freedesktop.org/drm/intel/issues/4817
[i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
[i915#5763]: https://gitlab.freedesktop.org/drm/intel/issues/5763
[i915#5903]: https://gitlab.freedesktop.org/drm/intel/issues/5903
Build changes
-------------
* Linux: CI_DRM_11960 -> Patchwork_106805v3
CI-20190529: 20190529
CI_DRM_11960: 16ef7aef4dd813fae8ef0ccf50fd69f1c0e8cf11 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_6605: 1596683606cafa391f5d8f6b68e0c888233c0738 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_106805v3: 16ef7aef4dd813fae8ef0ccf50fd69f1c0e8cf11 @ git://anongit.freedesktop.org/gfx-ci/linux
### Linux commits
35c30d9f9c9f drm/i915/gt: document TLB cache invalidation functions 6e2efa70d033 drm/i915/gt: Move TLB invalidation to its own file
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/index.html
Patchwork
CI[Intel-gfx] ✗ Fi.CI.IGT: failure for Move TLB invalidation code for its own file and document it (rev3)
In reply to Mauro Carvalho Chehab== Series Details ==
== Series Details ==
Series: Move TLB invalidation code for its own file and document it (rev3)
URL : https://patchwork.freedesktop.org/series/106805/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_11960_full -> Patchwork_106805v3_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_106805v3_full absolutely need to be verified manually.
If you think the reported changes have nothing to do with the changes introduced in Patchwork_106805v3_full, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI.
Participating hosts (13 -> 13)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_106805v3_full:
### IGT changes ###
#### Possible regressions ####
* igt@i915_pm_rpm@system-suspend-modeset:
- shard-iclb: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-iclb5/igt@[email protected]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb4/igt@[email protected]
Known issues
------------
Here are the changes found in Patchwork_106805v3_full that come from known issues:
### CI changes ###
#### Possible fixes ####
* boot:
- shard-apl: ([PASS][3], [PASS][4], [FAIL][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]) ([i915#4386]) -> ([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], [PASS][42], [PASS][43], [PASS][44], [PASS][45], [PASS][46], [PASS][47], [PASS][48], [PASS][49], [PASS][50], [PASS][51], [PASS][52])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl2/boot.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl2/boot.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl2/boot.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl3/boot.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl3/boot.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl4/boot.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl4/boot.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl4/boot.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl4/boot.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl4/boot.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl6/boot.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl6/boot.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl6/boot.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl7/boot.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl7/boot.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl7/boot.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl8/boot.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl8/boot.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl8/boot.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl8/boot.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl1/boot.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl1/boot.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl1/boot.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl2/boot.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl2/boot.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl1/boot.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl1/boot.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl1/boot.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl2/boot.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl2/boot.html
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl2/boot.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl3/boot.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl3/boot.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl3/boot.html
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl3/boot.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl3/boot.html
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl4/boot.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl4/boot.html
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl4/boot.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl4/boot.html
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl6/boot.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl6/boot.html
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl6/boot.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl6/boot.html
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl7/boot.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl7/boot.html
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl7/boot.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl8/boot.html
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl8/boot.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl8/boot.html
### IGT changes ###
#### Issues hit ####
* igt@gem_ctx_param@set-priority-not-supported:
- shard-iclb: NOTRUN -> [SKIP][53] ([fdo#109314])
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@gem_exec_balancer@parallel-bb-first:
- shard-iclb: [PASS][54] -> [SKIP][55] ([i915#4525]) +1 similar issue
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-iclb1/igt@[email protected]
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb3/igt@[email protected]
* igt@gem_exec_fair@basic-deadline:
- shard-skl: NOTRUN -> [FAIL][56] ([i915#2846])
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl7/igt@[email protected]
* igt@gem_exec_fair@basic-pace-share@rcs0:
- shard-kbl: [PASS][57] -> [FAIL][58] ([i915#2842]) +1 similar issue
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-kbl4/igt@gem_exec_fair@[email protected]
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl1/igt@gem_exec_fair@[email protected]
* igt@gem_exec_fair@basic-pace@rcs0:
- shard-glk: [PASS][59] -> [FAIL][60] ([i915#2842])
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-glk3/igt@gem_exec_fair@[email protected]
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-glk8/igt@gem_exec_fair@[email protected]
* igt@gem_huc_copy@huc-copy:
- shard-tglb: [PASS][61] -> [SKIP][62] ([i915#2190])
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-tglb8/igt@[email protected]
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-tglb7/igt@[email protected]
* igt@gem_lmem_swapping@heavy-random:
- shard-apl: NOTRUN -> [SKIP][63] ([fdo#109271] / [i915#4613])
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl8/igt@[email protected]
* igt@gem_lmem_swapping@heavy-verify-multi-ccs:
- shard-skl: NOTRUN -> [SKIP][64] ([fdo#109271] / [i915#4613])
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl10/igt@[email protected]
* igt@gem_lmem_swapping@parallel-random-verify:
- shard-iclb: NOTRUN -> [SKIP][65] ([i915#4613])
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@gem_lmem_swapping@verify:
- shard-kbl: NOTRUN -> [SKIP][66] ([fdo#109271] / [i915#4613]) +1 similar issue
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl4/igt@[email protected]
* igt@gem_pxp@create-regular-buffer:
- shard-iclb: NOTRUN -> [SKIP][67] ([i915#4270])
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@gem_userptr_blits@coherency-sync:
- shard-iclb: NOTRUN -> [SKIP][68] ([fdo#109290])
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@gem_userptr_blits@dmabuf-sync:
- shard-skl: NOTRUN -> [SKIP][69] ([fdo#109271] / [i915#3323])
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl10/igt@[email protected]
* igt@gem_userptr_blits@input-checking:
- shard-skl: NOTRUN -> [DMESG-WARN][70] ([i915#4991])
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl10/igt@[email protected]
* igt@gem_workarounds@suspend-resume:
- shard-apl: [PASS][71] -> [DMESG-WARN][72] ([i915#180]) +2 similar issues
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl2/igt@[email protected]
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl6/igt@[email protected]
* igt@gen7_exec_parse@basic-allocation:
- shard-iclb: NOTRUN -> [SKIP][73] ([fdo#109289])
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@i915_module_load@load:
- shard-iclb: NOTRUN -> [SKIP][74] ([i915#6227])
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-hdmi-a:
- shard-glk: NOTRUN -> [SKIP][75] ([fdo#109271] / [i915#1937])
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-glk2/igt@i915_pm_lpsp@[email protected]
* igt@i915_pm_rpm@dpms-lpsp:
- shard-kbl: NOTRUN -> [SKIP][76] ([fdo#109271]) +69 similar issues
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl1/igt@[email protected]
* igt@i915_selftest@live@objects:
- shard-skl: [PASS][77] -> [INCOMPLETE][78] ([i915#6155])
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-skl7/igt@i915_selftest@[email protected]
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl2/igt@i915_selftest@[email protected]
* igt@kms_big_fb@4-tiled-16bpp-rotate-180:
- shard-iclb: NOTRUN -> [SKIP][79] ([i915#5286]) +1 similar issue
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@kms_big_fb@x-tiled-64bpp-rotate-180:
- shard-skl: [PASS][80] -> [DMESG-WARN][81] ([i915#1982])
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-skl9/igt@[email protected]
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl4/igt@[email protected]
* igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-async-flip:
- shard-skl: NOTRUN -> [FAIL][82] ([i915#3743])
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl7/igt@[email protected]
* igt@kms_big_fb@y-tiled-32bpp-rotate-180:
- shard-skl: [PASS][83] -> [TIMEOUT][84] ([i915#6473])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-skl7/igt@[email protected]
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl5/igt@[email protected]
* igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_mc_ccs:
- shard-iclb: NOTRUN -> [SKIP][85] ([fdo#109278] / [i915#3886])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_mc_ccs.html
* igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_rc_ccs:
- shard-iclb: NOTRUN -> [SKIP][86] ([fdo#109278]) +5 similar issues
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_rc_ccs.html
* igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc:
- shard-apl: NOTRUN -> [SKIP][87] ([fdo#109271] / [i915#3886]) +5 similar issues
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl8/igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs:
- shard-skl: NOTRUN -> [SKIP][88] ([fdo#109271] / [i915#3886]) +4 similar issues
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl10/igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs.html
* igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_gen12_rc_ccs_cc:
- shard-kbl: NOTRUN -> [SKIP][89] ([fdo#109271] / [i915#3886]) +3 similar issues
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl4/igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_chamelium@hdmi-edid-change-during-suspend:
- shard-skl: NOTRUN -> [SKIP][90] ([fdo#109271] / [fdo#111827]) +7 similar issues
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl7/igt@[email protected]
* igt@kms_color_chamelium@pipe-b-degamma:
- shard-iclb: NOTRUN -> [SKIP][91] ([fdo#109284] / [fdo#111827]) +1 similar issue
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@kms_color_chamelium@pipe-c-ctm-blue-to-red:
- shard-kbl: NOTRUN -> [SKIP][92] ([fdo#109271] / [fdo#111827]) +3 similar issues
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl4/igt@[email protected]
* igt@kms_color_chamelium@pipe-d-ctm-max:
- shard-apl: NOTRUN -> [SKIP][93] ([fdo#109271] / [fdo#111827]) +4 similar issues
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl1/igt@[email protected]
* igt@kms_content_protection@atomic:
- shard-kbl: NOTRUN -> [TIMEOUT][94] ([i915#1319])
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl6/igt@[email protected]
* igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size:
- shard-glk: [PASS][95] -> [FAIL][96] ([i915#2346])
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-glk9/igt@kms_cursor_legacy@[email protected]
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-glk9/igt@kms_cursor_legacy@[email protected]
* igt@kms_dp_tiled_display@basic-test-pattern-with-chamelium:
- shard-iclb: NOTRUN -> [SKIP][97] ([i915#3528])
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@kms_draw_crc@draw-method-xrgb2101010-mmap-cpu-4tiled:
- shard-iclb: NOTRUN -> [SKIP][98] ([i915#5287])
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@kms_fbcon_fbt@psr-suspend:
- shard-skl: NOTRUN -> [FAIL][99] ([i915#4767])
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl10/igt@[email protected]
* igt@kms_flip@2x-flip-vs-fences:
- shard-iclb: NOTRUN -> [SKIP][100] ([fdo#109274]) +1 similar issue
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-valid-mode:
- shard-iclb: NOTRUN -> [SKIP][101] ([i915#2672]) +7 similar issues
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb7/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-valid-mode.html
* igt@kms_frontbuffer_tracking@fbc-suspend:
- shard-kbl: [PASS][102] -> [DMESG-WARN][103] ([i915#180]) +4 similar issues
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-kbl1/igt@[email protected]
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl7/igt@[email protected]
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-render:
- shard-iclb: NOTRUN -> [SKIP][104] ([fdo#109280]) +5 similar issues
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-onoff:
- shard-glk: NOTRUN -> [SKIP][105] ([fdo#109271]) +5 similar issues
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-glk2/igt@[email protected]
* igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-render:
- shard-apl: NOTRUN -> [SKIP][106] ([fdo#109271]) +89 similar issues
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl4/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-render.html
* igt@kms_plane@plane-panning-bottom-right-suspend@pipe-a-planes:
- shard-kbl: [PASS][107] -> [INCOMPLETE][108] ([i915#3614] / [i915#4939])
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-kbl7/igt@kms_plane@[email protected]
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl6/igt@kms_plane@[email protected]
* igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min:
- shard-skl: [PASS][109] -> [FAIL][110] ([fdo#108145] / [i915#265])
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-skl7/igt@[email protected]
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl5/igt@[email protected]
* igt@kms_plane_alpha_blend@pipe-b-alpha-opaque-fb:
- shard-kbl: NOTRUN -> [FAIL][111] ([fdo#108145] / [i915#265])
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl4/igt@[email protected]
* igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb:
- shard-apl: NOTRUN -> [FAIL][112] ([i915#265])
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl8/igt@[email protected]
* igt@kms_plane_scaling@plane-downscale-with-pixel-format-factor-0-5@pipe-a-edp-1:
- shard-iclb: [PASS][113] -> [SKIP][114] ([i915#5176]) +2 similar issues
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-iclb3/igt@kms_plane_scaling@[email protected]
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb2/igt@kms_plane_scaling@[email protected]
* igt@kms_plane_scaling@plane-downscale-with-rotation-factor-0-25@pipe-b-edp-1:
- shard-iclb: NOTRUN -> [SKIP][115] ([i915#5176]) +2 similar issues
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@kms_plane_scaling@[email protected]
* igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-b-edp-1:
- shard-iclb: [PASS][116] -> [SKIP][117] ([i915#5235]) +2 similar issues
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-iclb3/igt@kms_plane_scaling@[email protected]
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb2/igt@kms_plane_scaling@[email protected]
* igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-fully-sf:
- shard-kbl: NOTRUN -> [SKIP][118] ([fdo#109271] / [i915#658])
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl4/igt@[email protected]
* igt@kms_psr2_sf@cursor-plane-move-continuous-sf:
- shard-apl: NOTRUN -> [SKIP][119] ([fdo#109271] / [i915#658])
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl8/igt@[email protected]
* igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-fully-sf:
- shard-iclb: NOTRUN -> [SKIP][120] ([i915#658])
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-sf:
- shard-skl: NOTRUN -> [SKIP][121] ([fdo#109271] / [i915#658])
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl10/igt@[email protected]
* igt@kms_psr@psr2_primary_render:
- shard-iclb: NOTRUN -> [SKIP][122] ([fdo#109441])
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@kms_psr@psr2_primary_render.html
* igt@kms_psr@psr2_sprite_blt:
- shard-iclb: [PASS][123] -> [SKIP][124] ([fdo#109441]) +1 similar issue
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-iclb2/igt@kms_psr@psr2_sprite_blt.html
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb6/igt@kms_psr@psr2_sprite_blt.html
* igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
- shard-iclb: [PASS][125] -> [SKIP][126] ([i915#5519])
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-iclb3/igt@[email protected]
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb7/igt@[email protected]
* igt@kms_vrr@flipline:
- shard-skl: NOTRUN -> [SKIP][127] ([fdo#109271]) +66 similar issues
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl10/igt@[email protected]
* igt@nouveau_crc@pipe-b-source-outp-inactive:
- shard-iclb: NOTRUN -> [SKIP][128] ([i915#2530])
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@perf@blocking:
- shard-skl: NOTRUN -> [FAIL][129] ([i915#1542])
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl10/igt@[email protected]
* igt@prime_nv_test@i915_import_gtt_mmap:
- shard-iclb: NOTRUN -> [SKIP][130] ([fdo#109291])
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@prime_nv_test@i915_import_gtt_mmap.html
* igt@sysfs_clients@fair-1:
- shard-apl: NOTRUN -> [SKIP][131] ([fdo#109271] / [i915#2994])
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl1/igt@[email protected]
* igt@sysfs_clients@sema-50:
- shard-iclb: NOTRUN -> [SKIP][132] ([i915#2994])
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@sysfs_clients@split-10:
- shard-kbl: NOTRUN -> [SKIP][133] ([fdo#109271] / [i915#2994])
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl4/igt@[email protected]
#### Possible fixes ####
* igt@gem_ctx_exec@basic-nohangcheck:
- shard-tglb: [FAIL][134] ([i915#6268]) -> [PASS][135]
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-tglb2/igt@[email protected]
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-tglb1/igt@[email protected]
* igt@gem_ctx_isolation@preservation-s3@vcs0:
- shard-kbl: [DMESG-WARN][136] ([i915#180]) -> [PASS][137] +4 similar issues
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-kbl7/igt@gem_ctx_isolation@[email protected]
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl4/igt@gem_ctx_isolation@[email protected]
* igt@gem_ctx_persistence@legacy-engines-hang@bsd2:
- {shard-dg1}: [FAIL][138] ([i915#4883]) -> [PASS][139]
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-dg1-19/igt@gem_ctx_persistence@[email protected]
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-dg1-17/igt@gem_ctx_persistence@[email protected]
* igt@gem_eio@in-flight-contexts-1us:
- shard-tglb: [TIMEOUT][140] ([i915#3063]) -> [PASS][141]
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-tglb5/igt@[email protected]
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-tglb6/igt@[email protected]
* igt@gem_exec_balancer@parallel-keep-in-fence:
- shard-iclb: [SKIP][142] ([i915#4525]) -> [PASS][143]
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-iclb3/igt@[email protected]
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb2/igt@[email protected]
* igt@gem_exec_fair@basic-none-solo@rcs0:
- shard-apl: [FAIL][144] ([i915#2842]) -> [PASS][145]
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl4/igt@gem_exec_fair@[email protected]
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl7/igt@gem_exec_fair@[email protected]
* igt@gem_exec_fence@basic-wait@bcs0:
- {shard-rkl}: [SKIP][146] ([i915#6251]) -> [PASS][147]
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-rkl-5/igt@gem_exec_fence@[email protected]
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-rkl-1/igt@gem_exec_fence@[email protected]
* igt@gem_exec_flush@basic-batch-kernel-default-cmd:
- {shard-rkl}: [SKIP][148] ([fdo#109313]) -> [PASS][149]
[148]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-rkl-2/igt@[email protected]
[149]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-rkl-5/igt@[email protected]
* igt@gem_exec_reloc@basic-write-cpu:
- {shard-rkl}: [SKIP][150] ([i915#3281]) -> [PASS][151] +4 similar issues
[150]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-rkl-2/igt@[email protected]
[151]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-rkl-5/igt@[email protected]
* igt@gem_exec_whisper@basic-queues-forked-all:
- shard-iclb: [INCOMPLETE][152] ([i915#5304] / [i915#5498]) -> [PASS][153]
[152]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-iclb6/igt@[email protected]
[153]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb1/igt@[email protected]
* igt@gen9_exec_parse@allowed-single:
- shard-glk: [DMESG-WARN][154] ([i915#5566] / [i915#716]) -> [PASS][155]
[154]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-glk1/igt@[email protected]
[155]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-glk2/igt@[email protected]
* igt@i915_pm_rpm@dpms-non-lpsp:
- {shard-dg1}: [SKIP][156] ([i915#1397]) -> [PASS][157]
[156]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-dg1-13/igt@[email protected]
[157]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-dg1-15/igt@[email protected]
* igt@i915_suspend@debugfs-reader:
- shard-apl: [DMESG-WARN][158] ([i915#180]) -> [PASS][159] +1 similar issue
[158]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl8/igt@[email protected]
[159]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl4/igt@[email protected]
* igt@kms_async_flips@alternate-sync-async-flip@pipe-c-edp-1:
- shard-skl: [FAIL][160] ([i915#2521]) -> [PASS][161]
[160]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-skl10/igt@kms_async_flips@[email protected]
[161]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl9/igt@kms_async_flips@[email protected]
* igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs:
- {shard-rkl}: [SKIP][162] ([i915#1845] / [i915#4098]) -> [PASS][163] +7 similar issues
[162]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-rkl-5/igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs.html
[163]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-rkl-6/igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs.html
* igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions:
- shard-glk: [FAIL][164] ([i915#2346]) -> [PASS][165]
[164]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-glk9/igt@kms_cursor_legacy@[email protected]
[165]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-glk9/igt@kms_cursor_legacy@[email protected]
* igt@kms_draw_crc@draw-method-xrgb2101010-render-ytiled:
- {shard-rkl}: [SKIP][166] ([fdo#111314] / [i915#4098] / [i915#4369]) -> [PASS][167] +3 similar issues
[166]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-rkl-5/igt@[email protected]
[167]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-rkl-6/igt@[email protected]
* igt@kms_fbcon_fbt@fbc-suspend:
- shard-apl: [INCOMPLETE][168] ([i915#180] / [i915#1982] / [i915#4939]) -> [PASS][169]
[168]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl4/igt@[email protected]
[169]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl2/igt@[email protected]
* igt@kms_flip@flip-vs-expired-vblank@a-edp1:
- shard-skl: [FAIL][170] ([i915#79]) -> [PASS][171]
[170]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-skl6/igt@kms_flip@[email protected]
[171]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl6/igt@kms_flip@[email protected]
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt:
- {shard-rkl}: [SKIP][172] ([i915#1849] / [i915#4098]) -> [PASS][173] +3 similar issues
[172]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-rkl-5/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt.html
[173]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt.html
* igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1:
- shard-kbl: [FAIL][174] ([i915#1188]) -> [PASS][175]
[174]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-kbl4/igt@kms_hdr@[email protected]
[175]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl1/igt@kms_hdr@[email protected]
* igt@kms_plane_alpha_blend@pipe-a-constant-alpha-mid:
- {shard-rkl}: [SKIP][176] ([i915#1849] / [i915#3546] / [i915#4098]) -> [PASS][177]
[176]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-rkl-5/igt@[email protected]
[177]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-rkl-6/igt@[email protected]
* igt@kms_psr2_su@frontbuffer-xrgb8888:
- shard-iclb: [SKIP][178] ([fdo#109642] / [fdo#111068] / [i915#658]) -> [PASS][179]
[178]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-iclb4/igt@[email protected]
[179]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb2/igt@[email protected]
* igt@kms_psr@psr2_cursor_plane_move:
- shard-iclb: [SKIP][180] ([fdo#109441]) -> [PASS][181]
[180]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-iclb3/igt@kms_psr@psr2_cursor_plane_move.html
[181]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb2/igt@kms_psr@psr2_cursor_plane_move.html
* igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
- shard-tglb: [SKIP][182] ([i915#5519]) -> [PASS][183]
[182]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-tglb5/igt@[email protected]
[183]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-tglb8/igt@[email protected]
* igt@perf@polling-parameterized:
- shard-skl: [FAIL][184] ([i915#5639]) -> [PASS][185]
[184]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-skl5/igt@[email protected]
[185]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl10/igt@[email protected]
* igt@prime_vgem@basic-fence-flip:
- {shard-rkl}: [SKIP][186] ([fdo#109295] / [i915#3708] / [i915#4098]) -> [PASS][187]
[186]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-rkl-5/igt@[email protected]
[187]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-rkl-6/igt@[email protected]
#### Warnings ####
* igt@gem_eio@kms:
- shard-tglb: [FAIL][188] ([i915#5784]) -> [TIMEOUT][189] ([i915#3063])
[188]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-tglb8/igt@[email protected]
[189]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-tglb2/igt@[email protected]
* igt@kms_ccs@pipe-d-crc-primary-rotation-180-4_tiled_dg2_rc_ccs_cc:
- shard-glk: [SKIP][190] ([fdo#109271]) -> [SKIP][191] ([fdo#109271] / [i915#1888])
[190]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-glk2/igt@kms_ccs@pipe-d-crc-primary-rotation-180-4_tiled_dg2_rc_ccs_cc.html
[191]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-glk3/igt@kms_ccs@pipe-d-crc-primary-rotation-180-4_tiled_dg2_rc_ccs_cc.html
* igt@kms_dsc@basic-dsc:
- shard-skl: [SKIP][192] ([fdo#109271]) -> [SKIP][193] ([fdo#109271] / [i915#1888])
[192]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-skl7/igt@[email protected]
[193]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-skl2/igt@[email protected]
* igt@kms_fbcon_fbt@fbc-suspend:
- shard-kbl: [INCOMPLETE][194] ([i915#180] / [i915#4939]) -> [FAIL][195] ([i915#4767])
[194]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-kbl7/igt@[email protected]
[195]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl1/igt@[email protected]
* igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area:
- shard-iclb: [SKIP][196] ([i915#2920]) -> [SKIP][197] ([fdo#111068] / [i915#658]) +1 similar issue
[196]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-iclb2/igt@[email protected]
[197]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb6/igt@[email protected]
* igt@kms_psr2_sf@primary-plane-update-sf-dmg-area:
- shard-iclb: [SKIP][198] ([fdo#111068] / [i915#658]) -> [SKIP][199] ([i915#2920]) +1 similar issue
[198]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-iclb3/igt@[email protected]
[199]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-iclb2/igt@[email protected]
* igt@runner@aborted:
- shard-apl: ([FAIL][200], [FAIL][201], [FAIL][202], [FAIL][203], [FAIL][204], [FAIL][205]) ([i915#180] / [i915#3002] / [i915#4312] / [i915#5257]) -> ([FAIL][206], [FAIL][207], [FAIL][208], [FAIL][209], [FAIL][210]) ([fdo#109271] / [i915#180] / [i915#3002] / [i915#4312] / [i915#5257])
[200]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl4/igt@[email protected]
[201]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl4/igt@[email protected]
[202]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl8/igt@[email protected]
[203]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl2/igt@[email protected]
[204]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl4/igt@[email protected]
[205]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-apl7/igt@[email protected]
[206]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl3/igt@[email protected]
[207]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl6/igt@[email protected]
[208]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl3/igt@[email protected]
[209]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl6/igt@[email protected]
[210]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-apl3/igt@[email protected]
- shard-kbl: ([FAIL][211], [FAIL][212], [FAIL][213], [FAIL][214], [FAIL][215], [FAIL][216]) ([i915#180] / [i915#3002] / [i915#4312] / [i915#5257] / [i915#92]) -> ([FAIL][217], [FAIL][218], [FAIL][219], [FAIL][220], [FAIL][221], [FAIL][222], [FAIL][223], [FAIL][224]) ([fdo#109271] / [i915#180] / [i915#3002] / [i915#4312] / [i915#5257])
[211]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-kbl1/igt@[email protected]
[212]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-kbl7/igt@[email protected]
[213]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-kbl7/igt@[email protected]
[214]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-kbl7/igt@[email protected]
[215]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-kbl7/igt@[email protected]
[216]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11960/shard-kbl7/igt@[email protected]
[217]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl7/igt@[email protected]
[218]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl7/igt@[email protected]
[219]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl7/igt@[email protected]
[220]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl7/igt@[email protected]
[221]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl7/igt@[email protected]
[222]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl7/igt@[email protected]
[223]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl7/igt@[email protected]
[224]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/shard-kbl1/igt@[email protected]
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
[fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
[fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
[fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
[fdo#109290]: https://bugs.freedesktop.org/show_bug.cgi?id=109290
[fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[fdo#109300]: https://bugs.freedesktop.org/show_bug.cgi?id=109300
[fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
[fdo#109309]: https://bugs.freedesktop.org/show_bug.cgi?id=109309
[fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
[fdo#109314]: https://bugs.freedesktop.org/show_bug.cgi?id=109314
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
[fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
[fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[fdo#111314]: https://bugs.freedesktop.org/show_bug.cgi?id=111314
[fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
[fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
[fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
[i915#1063]: https://gitlab.freedesktop.org/drm/intel/issues/1063
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
[i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
[i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319
[i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
[i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
[i915#1542]: https://gitlab.freedesktop.org/drm/intel/issues/1542
[i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
[i915#1836]: https://gitlab.freedesktop.org/drm/intel/issues/1836
[i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
[i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
[i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
[i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
[i915#1937]: https://gitlab.freedesktop.org/drm/intel/issues/1937
[i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
[i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
[i915#2521]: https://gitlab.freedesktop.org/drm/intel/issues/2521
[i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
[i915#2530]: https://gitlab.freedesktop.org/drm/intel/issues/2530
[i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
[i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
[i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
[i915#284]: https://gitlab.freedesktop.org/drm/intel/issues/284
[i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
[i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
[i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
[i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
[i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994
[i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002
[i915#3063]: https://gitlab.freedesktop.org/drm/intel/issues/3063
[i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
[i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
[i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
[i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
[i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
[i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
[i915#3323]: https://gitlab.freedesktop.org/drm/intel/issues/3323
[i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
[i915#3528]: https://gitlab.freedesktop.org/drm/intel/issues/3528
[i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
[i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558
[i915#3614]: https://gitlab.freedesktop.org/drm/intel/issues/3614
[i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
[i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
[i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
[i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
[i915#3743]: https://gitlab.freedesktop.org/drm/intel/issues/3743
[i915#3810]: https://gitlab.freedesktop.org/drm/intel/issues/3810
[i915#3828]: https://gitlab.freedesktop.org/drm/intel/issues/3828
[i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
[i915#3989]: https://gitlab.freedesktop.org/drm/intel/issues/3989
[i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
[i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
[i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
[i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
[i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4171]: https://gitlab.freedesktop.org/drm/intel/issues/4171
[i915#426]: https://gitlab.freedesktop.org/drm/intel/issues/426
[i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
[i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
[i915#4369]: https://gitlab.freedesktop.org/drm/intel/issues/4369
[i915#4386]: https://gitlab.freedesktop.org/drm/intel/issues/4386
[i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
[i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4767]: https://gitlab.freedesktop.org/drm/intel/issues/4767
[i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
[i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
[i915#4853]: https://gitlab.freedesktop.org/drm/intel/issues/4853
[i915#4877]: https://gitlab.freedesktop.org/drm/intel/issues/4877
[i915#4883]: https://gitlab.freedesktop.org/drm/intel/issues/4883
[i915#4939]: https://gitlab.freedesktop.org/drm/intel/issues/4939
[i915#4991]: https://gitlab.freedesktop.org/drm/intel/issues/4991
[i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
[i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
[i915#5257]: https://gitlab.freedesktop.org/drm/intel/issues/5257
[i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
[i915#5287]: https://gitlab.freedesktop.org/drm/intel/issues/5287
[i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
[i915#5304]: https://gitlab.freedesktop.org/drm/intel/issues/5304
[i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
[i915#5327]: https://gitlab.freedesktop.org/drm/intel/issues/5327
[i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
[i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439
[i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461
[i915#5498]: https://gitlab.freedesktop.org/drm/intel/issues/5498
[i915#5519]: https://gitlab.freedesktop.org/drm/intel/issues/5519
[i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
[i915#5639]: https://gitlab.freedesktop.org/drm/intel/issues/5639
[i915#5723]: https://gitlab.freedesktop.org/drm/intel/issues/5723
[i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
[i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
[i915#6155]: https://gitlab.freedesktop.org/drm/intel/issues/6155
[i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
[i915#6247]: https://gitlab.freedesktop.org/drm/intel/issues/6247
[i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
[i915#6251]: https://gitlab.freedesktop.org/drm/intel/issues/6251
[i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252
[i915#6259]: https://gitlab.freedesktop.org/drm/intel/issues/6259
[i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
[i915#6334]: https://gitlab.freedesktop.org/drm/intel/issues/6334
[i915#6473]: https://gitlab.freedesktop.org/drm/intel/issues/6473
[i915#6496]: https://gitlab.freedesktop.org/drm/intel/issues/6496
[i915#6497]: https://gitlab.freedesktop.org/drm/intel/issues/6497
[i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
[i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
[i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
[i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92
Build changes
-------------
* Linux: CI_DRM_11960 -> Patchwork_106805v3
CI-20190529: 20190529
CI_DRM_11960: 16ef7aef4dd813fae8ef0ccf50fd69f1c0e8cf11 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_6605: 1596683606cafa391f5d8f6b68e0c888233c0738 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_106805v3: 16ef7aef4dd813fae8ef0ccf50fd69f1c0e8cf11 @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_106805v3/index.html