* [Intel-gfx] [PATCH 1/6] drm/i915: move the pre_pin earlier
@ 2021-11-12 15:32 Matthew Auld
2021-11-12 15:32 ` [Intel-gfx] [PATCH 2/6] drm/i915: Create a dummy object for gen6 ppgtt Matthew Auld
` (8 more replies)
0 siblings, 9 replies; 10+ messages in thread
From: Matthew Auld @ 2021-11-12 15:32 UTC (permalink / raw)
To: intel-gfx; +Cc: Thomas Hellström, dri-devel
In intel_context_do_pin_ww, when calling into the pre_pin hook(which is
passed the ww context) it could in theory return -EDEADLK(which is very
likely with debug kernels), once we start adding more ww locking in there,
like in the next patch. If so then we need to be mindful of having to
restart the do_pin at this point.
If this is the kernel_context, or some other early in-kernel context
where we have yet to setup the default_state, then we always inhibit the
context restore, and instead rely on the delayed active_release to set
the CONTEXT_VALID_BIT for us(if we even care), which should indicate
that we have context switched away, and that our newly saved context
state should now be valid. However, since we currently grab the active
reference before the potential ww dance, we can end up setting the
CONTEXT_VALID_BIT much too early, if we need to backoff, and then upon
re-trying the do_pin, we could potentially cause the hardware to
incorrectly load some garbage context state when later context switching
to that context, but at the very least this will trigger the
GEM_BUG_ON() in __engine_unpark. For now let's just move any ww dance
stuff prior to arming the active reference.
For normal user contexts this shouldn't be a concern, since we should
already have the default_state ready when initialising the lrc state,
and so there should be no concern with active_release somehow
prematurely setting the CONTEXT_VALID_BIT.
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
---
drivers/gpu/drm/i915/gt/intel_context.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/intel_context.c b/drivers/gpu/drm/i915/gt/intel_context.c
index 5634d14052bc..ad44860faaf3 100644
--- a/drivers/gpu/drm/i915/gt/intel_context.c
+++ b/drivers/gpu/drm/i915/gt/intel_context.c
@@ -228,17 +228,17 @@ int __intel_context_do_pin_ww(struct intel_context *ce,
if (err)
return err;
- err = i915_active_acquire(&ce->active);
+ err = ce->ops->pre_pin(ce, ww, &vaddr);
if (err)
goto err_ctx_unpin;
- err = ce->ops->pre_pin(ce, ww, &vaddr);
+ err = i915_active_acquire(&ce->active);
if (err)
- goto err_release;
+ goto err_post_unpin;
err = mutex_lock_interruptible(&ce->pin_mutex);
if (err)
- goto err_post_unpin;
+ goto err_release;
intel_engine_pm_might_get(ce->engine);
--
2.31.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Intel-gfx] [PATCH 2/6] drm/i915: Create a dummy object for gen6 ppgtt
2021-11-12 15:32 [Intel-gfx] [PATCH 1/6] drm/i915: move the pre_pin earlier Matthew Auld
@ 2021-11-12 15:32 ` Matthew Auld
2021-11-12 15:32 ` [Intel-gfx] [PATCH 3/6] drm/i915: Create a full object for mock_ring, v2 Matthew Auld
` (7 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Matthew Auld @ 2021-11-12 15:32 UTC (permalink / raw)
To: intel-gfx; +Cc: dri-devel
From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
We currently have to special case vma->obj being NULL because
of gen6 ppgtt and mock_engine. Fix gen6 ppgtt, so we may soon
be able to remove a few checks. As the object only exists as
a fake object pointing to ggtt, we have no backing storage,
so no real object is created. It just has to look real enough.
Also kill pin_mutex, it's not compatible with ww locking,
and we can use the vm lock instead.
v2:
- Drop IS_SHRINKABLE and shorten overly long line
v3:
- Checkpatch fix for alignment
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
---
drivers/gpu/drm/i915/gem/i915_gem_internal.c | 44 ++++---
drivers/gpu/drm/i915/gt/gen6_ppgtt.c | 123 +++++++++++--------
drivers/gpu/drm/i915/gt/gen6_ppgtt.h | 1 -
drivers/gpu/drm/i915/i915_drv.h | 4 +
4 files changed, 100 insertions(+), 72 deletions(-)
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_internal.c b/drivers/gpu/drm/i915/gem/i915_gem_internal.c
index a57a6b7013c2..c5150a1ee3d2 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_internal.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_internal.c
@@ -145,24 +145,10 @@ static const struct drm_i915_gem_object_ops i915_gem_object_internal_ops = {
.put_pages = i915_gem_object_put_pages_internal,
};
-/**
- * i915_gem_object_create_internal: create an object with volatile pages
- * @i915: the i915 device
- * @size: the size in bytes of backing storage to allocate for the object
- *
- * Creates a new object that wraps some internal memory for private use.
- * This object is not backed by swappable storage, and as such its contents
- * are volatile and only valid whilst pinned. If the object is reaped by the
- * shrinker, its pages and data will be discarded. Equally, it is not a full
- * GEM object and so not valid for access from userspace. This makes it useful
- * for hardware interfaces like ringbuffers (which are pinned from the time
- * the request is written to the time the hardware stops accessing it), but
- * not for contexts (which need to be preserved when not active for later
- * reuse). Note that it is not cleared upon allocation.
- */
struct drm_i915_gem_object *
-i915_gem_object_create_internal(struct drm_i915_private *i915,
- phys_addr_t size)
+__i915_gem_object_create_internal(struct drm_i915_private *i915,
+ const struct drm_i915_gem_object_ops *ops,
+ phys_addr_t size)
{
static struct lock_class_key lock_class;
struct drm_i915_gem_object *obj;
@@ -179,7 +165,7 @@ i915_gem_object_create_internal(struct drm_i915_private *i915,
return ERR_PTR(-ENOMEM);
drm_gem_private_object_init(&i915->drm, &obj->base, size);
- i915_gem_object_init(obj, &i915_gem_object_internal_ops, &lock_class, 0);
+ i915_gem_object_init(obj, ops, &lock_class, 0);
obj->mem_flags |= I915_BO_FLAG_STRUCT_PAGE;
/*
@@ -199,3 +185,25 @@ i915_gem_object_create_internal(struct drm_i915_private *i915,
return obj;
}
+
+/**
+ * i915_gem_object_create_internal: create an object with volatile pages
+ * @i915: the i915 device
+ * @size: the size in bytes of backing storage to allocate for the object
+ *
+ * Creates a new object that wraps some internal memory for private use.
+ * This object is not backed by swappable storage, and as such its contents
+ * are volatile and only valid whilst pinned. If the object is reaped by the
+ * shrinker, its pages and data will be discarded. Equally, it is not a full
+ * GEM object and so not valid for access from userspace. This makes it useful
+ * for hardware interfaces like ringbuffers (which are pinned from the time
+ * the request is written to the time the hardware stops accessing it), but
+ * not for contexts (which need to be preserved when not active for later
+ * reuse). Note that it is not cleared upon allocation.
+ */
+struct drm_i915_gem_object *
+i915_gem_object_create_internal(struct drm_i915_private *i915,
+ phys_addr_t size)
+{
+ return __i915_gem_object_create_internal(i915, &i915_gem_object_internal_ops, size);
+}
diff --git a/drivers/gpu/drm/i915/gt/gen6_ppgtt.c b/drivers/gpu/drm/i915/gt/gen6_ppgtt.c
index ae693bf88ef0..4a166d25fe60 100644
--- a/drivers/gpu/drm/i915/gt/gen6_ppgtt.c
+++ b/drivers/gpu/drm/i915/gt/gen6_ppgtt.c
@@ -261,13 +261,10 @@ static void gen6_ppgtt_cleanup(struct i915_address_space *vm)
{
struct gen6_ppgtt *ppgtt = to_gen6_ppgtt(i915_vm_to_ppgtt(vm));
- __i915_vma_put(ppgtt->vma);
-
gen6_ppgtt_free_pd(ppgtt);
free_scratch(vm);
mutex_destroy(&ppgtt->flush);
- mutex_destroy(&ppgtt->pin_mutex);
free_pd(&ppgtt->base.vm, ppgtt->base.pd);
}
@@ -330,37 +327,6 @@ static const struct i915_vma_ops pd_vma_ops = {
.unbind_vma = pd_vma_unbind,
};
-static struct i915_vma *pd_vma_create(struct gen6_ppgtt *ppgtt, int size)
-{
- struct i915_ggtt *ggtt = ppgtt->base.vm.gt->ggtt;
- struct i915_vma *vma;
-
- GEM_BUG_ON(!IS_ALIGNED(size, I915_GTT_PAGE_SIZE));
- GEM_BUG_ON(size > ggtt->vm.total);
-
- vma = i915_vma_alloc();
- if (!vma)
- return ERR_PTR(-ENOMEM);
-
- i915_active_init(&vma->active, NULL, NULL, 0);
-
- kref_init(&vma->ref);
- mutex_init(&vma->pages_mutex);
- vma->vm = i915_vm_get(&ggtt->vm);
- vma->ops = &pd_vma_ops;
- vma->private = ppgtt;
-
- vma->size = size;
- vma->fence_size = size;
- atomic_set(&vma->flags, I915_VMA_GGTT);
- vma->ggtt_view.type = I915_GGTT_VIEW_ROTATED; /* prevent fencing */
-
- INIT_LIST_HEAD(&vma->obj_link);
- INIT_LIST_HEAD(&vma->closed_link);
-
- return vma;
-}
-
int gen6_ppgtt_pin(struct i915_ppgtt *base, struct i915_gem_ww_ctx *ww)
{
struct gen6_ppgtt *ppgtt = to_gen6_ppgtt(base);
@@ -377,24 +343,85 @@ int gen6_ppgtt_pin(struct i915_ppgtt *base, struct i915_gem_ww_ctx *ww)
if (atomic_add_unless(&ppgtt->pin_count, 1, 0))
return 0;
- if (mutex_lock_interruptible(&ppgtt->pin_mutex))
- return -EINTR;
+ /* grab the ppgtt resv to pin the object */
+ err = i915_vm_lock_objects(&ppgtt->base.vm, ww);
+ if (err)
+ return err;
/*
* PPGTT PDEs reside in the GGTT and consists of 512 entries. The
* allocator works in address space sizes, so it's multiplied by page
* size. We allocate at the top of the GTT to avoid fragmentation.
*/
- err = 0;
- if (!atomic_read(&ppgtt->pin_count))
+ if (!atomic_read(&ppgtt->pin_count)) {
err = i915_ggtt_pin(ppgtt->vma, ww, GEN6_PD_ALIGN, PIN_HIGH);
+
+ GEM_BUG_ON(ppgtt->vma->fence);
+ clear_bit(I915_VMA_CAN_FENCE_BIT, __i915_vma_flags(ppgtt->vma));
+ }
if (!err)
atomic_inc(&ppgtt->pin_count);
- mutex_unlock(&ppgtt->pin_mutex);
return err;
}
+static int pd_dummy_obj_get_pages(struct drm_i915_gem_object *obj)
+{
+ obj->mm.pages = ZERO_SIZE_PTR;
+ return 0;
+}
+
+static void pd_dummy_obj_put_pages(struct drm_i915_gem_object *obj,
+ struct sg_table *pages)
+{
+}
+
+static const struct drm_i915_gem_object_ops pd_dummy_obj_ops = {
+ .name = "pd_dummy_obj",
+ .get_pages = pd_dummy_obj_get_pages,
+ .put_pages = pd_dummy_obj_put_pages,
+};
+
+static struct i915_page_directory *
+gen6_alloc_top_pd(struct gen6_ppgtt *ppgtt)
+{
+ struct i915_ggtt * const ggtt = ppgtt->base.vm.gt->ggtt;
+ struct i915_page_directory *pd;
+ int err;
+
+ pd = __alloc_pd(I915_PDES);
+ if (unlikely(!pd))
+ return ERR_PTR(-ENOMEM);
+
+ pd->pt.base = __i915_gem_object_create_internal(ppgtt->base.vm.gt->i915,
+ &pd_dummy_obj_ops,
+ I915_PDES * SZ_4K);
+ if (IS_ERR(pd->pt.base)) {
+ err = PTR_ERR(pd->pt.base);
+ pd->pt.base = NULL;
+ goto err_pd;
+ }
+
+ pd->pt.base->base.resv = i915_vm_resv_get(&ppgtt->base.vm);
+ pd->pt.base->shares_resv_from = &ppgtt->base.vm;
+
+ ppgtt->vma = i915_vma_instance(pd->pt.base, &ggtt->vm, NULL);
+ if (IS_ERR(ppgtt->vma)) {
+ err = PTR_ERR(ppgtt->vma);
+ ppgtt->vma = NULL;
+ goto err_pd;
+ }
+
+ /* The dummy object we create is special, override ops.. */
+ ppgtt->vma->ops = &pd_vma_ops;
+ ppgtt->vma->private = ppgtt;
+ return pd;
+
+err_pd:
+ free_pd(&ppgtt->base.vm, pd);
+ return ERR_PTR(err);
+}
+
void gen6_ppgtt_unpin(struct i915_ppgtt *base)
{
struct gen6_ppgtt *ppgtt = to_gen6_ppgtt(base);
@@ -415,7 +442,6 @@ struct i915_ppgtt *gen6_ppgtt_create(struct intel_gt *gt)
return ERR_PTR(-ENOMEM);
mutex_init(&ppgtt->flush);
- mutex_init(&ppgtt->pin_mutex);
ppgtt_init(&ppgtt->base, gt, 0);
ppgtt->base.vm.pd_shift = ilog2(SZ_4K * SZ_4K / sizeof(gen6_pte_t));
@@ -430,19 +456,13 @@ struct i915_ppgtt *gen6_ppgtt_create(struct intel_gt *gt)
ppgtt->base.vm.alloc_pt_dma = alloc_pt_dma;
ppgtt->base.vm.pte_encode = ggtt->vm.pte_encode;
- ppgtt->base.pd = __alloc_pd(I915_PDES);
- if (!ppgtt->base.pd) {
- err = -ENOMEM;
- goto err_free;
- }
-
err = gen6_ppgtt_init_scratch(ppgtt);
if (err)
- goto err_pd;
+ goto err_free;
- ppgtt->vma = pd_vma_create(ppgtt, GEN6_PD_SIZE);
- if (IS_ERR(ppgtt->vma)) {
- err = PTR_ERR(ppgtt->vma);
+ ppgtt->base.pd = gen6_alloc_top_pd(ppgtt);
+ if (IS_ERR(ppgtt->base.pd)) {
+ err = PTR_ERR(ppgtt->base.pd);
goto err_scratch;
}
@@ -450,10 +470,7 @@ struct i915_ppgtt *gen6_ppgtt_create(struct intel_gt *gt)
err_scratch:
free_scratch(&ppgtt->base.vm);
-err_pd:
- free_pd(&ppgtt->base.vm, ppgtt->base.pd);
err_free:
- mutex_destroy(&ppgtt->pin_mutex);
kfree(ppgtt);
return ERR_PTR(err);
}
diff --git a/drivers/gpu/drm/i915/gt/gen6_ppgtt.h b/drivers/gpu/drm/i915/gt/gen6_ppgtt.h
index ab0eecb086dd..5e5cf2ec3309 100644
--- a/drivers/gpu/drm/i915/gt/gen6_ppgtt.h
+++ b/drivers/gpu/drm/i915/gt/gen6_ppgtt.h
@@ -19,7 +19,6 @@ struct gen6_ppgtt {
u32 pp_dir;
atomic_t pin_count;
- struct mutex pin_mutex;
bool scan_for_unused_pt;
};
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 21ff781b8149..da39bf5508ca 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1933,6 +1933,10 @@ int i915_gem_evict_vm(struct i915_address_space *vm);
struct drm_i915_gem_object *
i915_gem_object_create_internal(struct drm_i915_private *dev_priv,
phys_addr_t size);
+struct drm_i915_gem_object *
+__i915_gem_object_create_internal(struct drm_i915_private *dev_priv,
+ const struct drm_i915_gem_object_ops *ops,
+ phys_addr_t size);
/* i915_gem_tiling.c */
static inline bool i915_gem_object_needs_bit17_swizzle(struct drm_i915_gem_object *obj)
--
2.31.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Intel-gfx] [PATCH 3/6] drm/i915: Create a full object for mock_ring, v2.
2021-11-12 15:32 [Intel-gfx] [PATCH 1/6] drm/i915: move the pre_pin earlier Matthew Auld
2021-11-12 15:32 ` [Intel-gfx] [PATCH 2/6] drm/i915: Create a dummy object for gen6 ppgtt Matthew Auld
@ 2021-11-12 15:32 ` Matthew Auld
2021-11-12 15:32 ` [Intel-gfx] [PATCH 4/6] drm/i915: vma is always backed by an object Matthew Auld
` (6 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Matthew Auld @ 2021-11-12 15:32 UTC (permalink / raw)
To: intel-gfx; +Cc: dri-devel
From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
This allows us to finally get rid of all the assumptions that vma->obj
is NULL.
Changes since v1:
- Ensure the mock_ring vma is pinned to prevent a fault.
- Pin it high to avoid failure in evict_for_vma selftest.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
---
drivers/gpu/drm/i915/gt/mock_engine.c | 38 ++++++++++++++++++++-------
1 file changed, 28 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/mock_engine.c b/drivers/gpu/drm/i915/gt/mock_engine.c
index 8b89215afe46..bb99fc03f503 100644
--- a/drivers/gpu/drm/i915/gt/mock_engine.c
+++ b/drivers/gpu/drm/i915/gt/mock_engine.c
@@ -35,9 +35,31 @@ static void mock_timeline_unpin(struct intel_timeline *tl)
atomic_dec(&tl->pin_count);
}
+static struct i915_vma *create_ring_vma(struct i915_ggtt *ggtt, int size)
+{
+ struct i915_address_space *vm = &ggtt->vm;
+ struct drm_i915_private *i915 = vm->i915;
+ struct drm_i915_gem_object *obj;
+ struct i915_vma *vma;
+
+ obj = i915_gem_object_create_internal(i915, size);
+ if (IS_ERR(obj))
+ return ERR_CAST(obj);
+
+ vma = i915_vma_instance(obj, vm, NULL);
+ if (IS_ERR(vma))
+ goto err;
+
+ return vma;
+
+err:
+ i915_gem_object_put(obj);
+ return vma;
+}
+
static struct intel_ring *mock_ring(struct intel_engine_cs *engine)
{
- const unsigned long sz = PAGE_SIZE / 2;
+ const unsigned long sz = PAGE_SIZE;
struct intel_ring *ring;
ring = kzalloc(sizeof(*ring) + sz, GFP_KERNEL);
@@ -50,15 +72,11 @@ static struct intel_ring *mock_ring(struct intel_engine_cs *engine)
ring->vaddr = (void *)(ring + 1);
atomic_set(&ring->pin_count, 1);
- ring->vma = i915_vma_alloc();
- if (!ring->vma) {
+ ring->vma = create_ring_vma(engine->gt->ggtt, PAGE_SIZE);
+ if (IS_ERR(ring->vma)) {
kfree(ring);
return NULL;
}
- i915_active_init(&ring->vma->active, NULL, NULL, 0);
- __set_bit(I915_VMA_GGTT_BIT, __i915_vma_flags(ring->vma));
- __set_bit(DRM_MM_NODE_ALLOCATED_BIT, &ring->vma->node.flags);
- ring->vma->node.size = sz;
intel_ring_update_space(ring);
@@ -67,8 +85,7 @@ static struct intel_ring *mock_ring(struct intel_engine_cs *engine)
static void mock_ring_free(struct intel_ring *ring)
{
- i915_active_fini(&ring->vma->active);
- i915_vma_free(ring->vma);
+ i915_vma_put(ring->vma);
kfree(ring);
}
@@ -125,6 +142,7 @@ static void mock_context_unpin(struct intel_context *ce)
static void mock_context_post_unpin(struct intel_context *ce)
{
+ i915_vma_unpin(ce->ring->vma);
}
static void mock_context_destroy(struct kref *ref)
@@ -169,7 +187,7 @@ static int mock_context_alloc(struct intel_context *ce)
static int mock_context_pre_pin(struct intel_context *ce,
struct i915_gem_ww_ctx *ww, void **unused)
{
- return 0;
+ return i915_vma_pin_ww(ce->ring->vma, ww, 0, 0, PIN_GLOBAL | PIN_HIGH);
}
static int mock_context_pin(struct intel_context *ce, void *unused)
--
2.31.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Intel-gfx] [PATCH 4/6] drm/i915: vma is always backed by an object.
2021-11-12 15:32 [Intel-gfx] [PATCH 1/6] drm/i915: move the pre_pin earlier Matthew Auld
2021-11-12 15:32 ` [Intel-gfx] [PATCH 2/6] drm/i915: Create a dummy object for gen6 ppgtt Matthew Auld
2021-11-12 15:32 ` [Intel-gfx] [PATCH 3/6] drm/i915: Create a full object for mock_ring, v2 Matthew Auld
@ 2021-11-12 15:32 ` Matthew Auld
2021-11-12 15:32 ` [Intel-gfx] [PATCH 5/6] drm/i915: Remove resv from i915_vma Matthew Auld
` (5 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Matthew Auld @ 2021-11-12 15:32 UTC (permalink / raw)
To: intel-gfx; +Cc: dri-devel
From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
vma->obj and vma->resv are now never NULL, and some checks can be removed.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
---
drivers/gpu/drm/i915/gt/intel_context.c | 2 +-
.../gpu/drm/i915/gt/intel_ring_submission.c | 2 +-
drivers/gpu/drm/i915/i915_vma.c | 48 ++++++++-----------
drivers/gpu/drm/i915/i915_vma.h | 3 --
4 files changed, 22 insertions(+), 33 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/intel_context.c b/drivers/gpu/drm/i915/gt/intel_context.c
index ad44860faaf3..e31669657dae 100644
--- a/drivers/gpu/drm/i915/gt/intel_context.c
+++ b/drivers/gpu/drm/i915/gt/intel_context.c
@@ -219,7 +219,7 @@ int __intel_context_do_pin_ww(struct intel_context *ce,
*/
err = i915_gem_object_lock(ce->timeline->hwsp_ggtt->obj, ww);
- if (!err && ce->ring->vma->obj)
+ if (!err)
err = i915_gem_object_lock(ce->ring->vma->obj, ww);
if (!err && ce->state)
err = i915_gem_object_lock(ce->state->obj, ww);
diff --git a/drivers/gpu/drm/i915/gt/intel_ring_submission.c b/drivers/gpu/drm/i915/gt/intel_ring_submission.c
index 586dca1731ce..3e6fac0340ef 100644
--- a/drivers/gpu/drm/i915/gt/intel_ring_submission.c
+++ b/drivers/gpu/drm/i915/gt/intel_ring_submission.c
@@ -1357,7 +1357,7 @@ int intel_ring_submission_setup(struct intel_engine_cs *engine)
err = i915_gem_object_lock(timeline->hwsp_ggtt->obj, &ww);
if (!err && gen7_wa_vma)
err = i915_gem_object_lock(gen7_wa_vma->obj, &ww);
- if (!err && engine->legacy.ring->vma->obj)
+ if (!err)
err = i915_gem_object_lock(engine->legacy.ring->vma->obj, &ww);
if (!err)
err = intel_timeline_pin(timeline, &ww);
diff --git a/drivers/gpu/drm/i915/i915_vma.c b/drivers/gpu/drm/i915/i915_vma.c
index 8781c4f61952..fd7594e3e7e7 100644
--- a/drivers/gpu/drm/i915/i915_vma.c
+++ b/drivers/gpu/drm/i915/i915_vma.c
@@ -40,12 +40,12 @@
static struct kmem_cache *slab_vmas;
-struct i915_vma *i915_vma_alloc(void)
+static struct i915_vma *i915_vma_alloc(void)
{
return kmem_cache_zalloc(slab_vmas, GFP_KERNEL);
}
-void i915_vma_free(struct i915_vma *vma)
+static void i915_vma_free(struct i915_vma *vma)
{
return kmem_cache_free(slab_vmas, vma);
}
@@ -426,10 +426,8 @@ int i915_vma_bind(struct i915_vma *vma,
work->base.dma.error = 0; /* enable the queue_work() */
- if (vma->obj) {
- __i915_gem_object_pin_pages(vma->obj);
- work->pinned = i915_gem_object_get(vma->obj);
- }
+ __i915_gem_object_pin_pages(vma->obj);
+ work->pinned = i915_gem_object_get(vma->obj);
} else {
vma->ops->bind_vma(vma->vm, NULL, vma, cache_level, bind_flags);
}
@@ -670,7 +668,7 @@ i915_vma_insert(struct i915_vma *vma, u64 size, u64 alignment, u64 flags)
}
color = 0;
- if (vma->obj && i915_vm_has_cache_coloring(vma->vm))
+ if (i915_vm_has_cache_coloring(vma->vm))
color = vma->obj->cache_level;
if (flags & PIN_OFFSET_FIXED) {
@@ -795,17 +793,14 @@ static bool try_qad_pin(struct i915_vma *vma, unsigned int flags)
static int vma_get_pages(struct i915_vma *vma)
{
int err = 0;
- bool pinned_pages = false;
+ bool pinned_pages = true;
if (atomic_add_unless(&vma->pages_count, 1, 0))
return 0;
- if (vma->obj) {
- err = i915_gem_object_pin_pages(vma->obj);
- if (err)
- return err;
- pinned_pages = true;
- }
+ err = i915_gem_object_pin_pages(vma->obj);
+ if (err)
+ return err;
/* Allocations ahoy! */
if (mutex_lock_interruptible(&vma->pages_mutex)) {
@@ -838,8 +833,8 @@ static void __vma_put_pages(struct i915_vma *vma, unsigned int count)
if (atomic_sub_return(count, &vma->pages_count) == 0) {
vma->ops->clear_pages(vma);
GEM_BUG_ON(vma->pages);
- if (vma->obj)
- i915_gem_object_unpin_pages(vma->obj);
+
+ i915_gem_object_unpin_pages(vma->obj);
}
mutex_unlock(&vma->pages_mutex);
}
@@ -875,7 +870,7 @@ int i915_vma_pin_ww(struct i915_vma *vma, struct i915_gem_ww_ctx *ww,
int err;
#ifdef CONFIG_PROVE_LOCKING
- if (debug_locks && !WARN_ON(!ww) && vma->resv)
+ if (debug_locks && !WARN_ON(!ww))
assert_vma_held(vma);
#endif
@@ -983,7 +978,7 @@ int i915_vma_pin_ww(struct i915_vma *vma, struct i915_gem_ww_ctx *ww,
GEM_BUG_ON(!vma->pages);
err = i915_vma_bind(vma,
- vma->obj ? vma->obj->cache_level : 0,
+ vma->obj->cache_level,
flags, work);
if (err)
goto err_remove;
@@ -1037,7 +1032,7 @@ int i915_ggtt_pin(struct i915_vma *vma, struct i915_gem_ww_ctx *ww,
GEM_BUG_ON(!i915_vma_is_ggtt(vma));
#ifdef CONFIG_LOCKDEP
- WARN_ON(!ww && vma->resv && dma_resv_held(vma->resv));
+ WARN_ON(!ww && dma_resv_held(vma->resv));
#endif
do {
@@ -1116,6 +1111,7 @@ void i915_vma_reopen(struct i915_vma *vma)
void i915_vma_release(struct kref *ref)
{
struct i915_vma *vma = container_of(ref, typeof(*vma), ref);
+ struct drm_i915_gem_object *obj = vma->obj;
if (drm_mm_node_allocated(&vma->node)) {
mutex_lock(&vma->vm->mutex);
@@ -1126,15 +1122,11 @@ void i915_vma_release(struct kref *ref)
}
GEM_BUG_ON(i915_vma_is_active(vma));
- if (vma->obj) {
- struct drm_i915_gem_object *obj = vma->obj;
-
- spin_lock(&obj->vma.lock);
- list_del(&vma->obj_link);
- if (!RB_EMPTY_NODE(&vma->obj_node))
- rb_erase(&vma->obj_node, &obj->vma.tree);
- spin_unlock(&obj->vma.lock);
- }
+ spin_lock(&obj->vma.lock);
+ list_del(&vma->obj_link);
+ if (!RB_EMPTY_NODE(&vma->obj_node))
+ rb_erase(&vma->obj_node, &obj->vma.tree);
+ spin_unlock(&obj->vma.lock);
__i915_vma_remove_closed(vma);
i915_vm_put(vma->vm);
diff --git a/drivers/gpu/drm/i915/i915_vma.h b/drivers/gpu/drm/i915/i915_vma.h
index 648dbe744c96..312933c06017 100644
--- a/drivers/gpu/drm/i915/i915_vma.h
+++ b/drivers/gpu/drm/i915/i915_vma.h
@@ -418,9 +418,6 @@ static inline void i915_vma_clear_scanout(struct i915_vma *vma)
list_for_each_entry(V, &(OBJ)->vma.list, obj_link) \
for_each_until(!i915_vma_is_ggtt(V))
-struct i915_vma *i915_vma_alloc(void);
-void i915_vma_free(struct i915_vma *vma);
-
struct i915_vma *i915_vma_make_unshrinkable(struct i915_vma *vma);
void i915_vma_make_shrinkable(struct i915_vma *vma);
void i915_vma_make_purgeable(struct i915_vma *vma);
--
2.31.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Intel-gfx] [PATCH 5/6] drm/i915: Remove resv from i915_vma
2021-11-12 15:32 [Intel-gfx] [PATCH 1/6] drm/i915: move the pre_pin earlier Matthew Auld
` (2 preceding siblings ...)
2021-11-12 15:32 ` [Intel-gfx] [PATCH 4/6] drm/i915: vma is always backed by an object Matthew Auld
@ 2021-11-12 15:32 ` Matthew Auld
2021-11-12 15:32 ` [Intel-gfx] [PATCH 6/6] drm/i915: Drain the ttm delayed workqueue too Matthew Auld
` (4 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Matthew Auld @ 2021-11-12 15:32 UTC (permalink / raw)
To: intel-gfx; +Cc: dri-devel
From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
It's just an alias to vma->obj->base.resv, no need to duplicate it.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com>
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
---
drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | 4 ++--
drivers/gpu/drm/i915/i915_vma.c | 9 ++++-----
drivers/gpu/drm/i915/i915_vma.h | 6 +++---
drivers/gpu/drm/i915/i915_vma_types.h | 1 -
4 files changed, 9 insertions(+), 11 deletions(-)
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
index ea5b7b2a4d70..9f7c6ecadb90 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
@@ -1001,7 +1001,7 @@ static int eb_validate_vmas(struct i915_execbuffer *eb)
}
if (!(ev->flags & EXEC_OBJECT_WRITE)) {
- err = dma_resv_reserve_shared(vma->resv, 1);
+ err = dma_resv_reserve_shared(vma->obj->base.resv, 1);
if (err)
return err;
}
@@ -2175,7 +2175,7 @@ static int eb_parse(struct i915_execbuffer *eb)
goto err_trampoline;
}
- err = dma_resv_reserve_shared(shadow->resv, 1);
+ err = dma_resv_reserve_shared(shadow->obj->base.resv, 1);
if (err)
goto err_trampoline;
diff --git a/drivers/gpu/drm/i915/i915_vma.c b/drivers/gpu/drm/i915/i915_vma.c
index fd7594e3e7e7..72c373a170a1 100644
--- a/drivers/gpu/drm/i915/i915_vma.c
+++ b/drivers/gpu/drm/i915/i915_vma.c
@@ -116,7 +116,6 @@ vma_create(struct drm_i915_gem_object *obj,
vma->vm = i915_vm_get(vm);
vma->ops = &vm->vma_ops;
vma->obj = obj;
- vma->resv = obj->base.resv;
vma->size = obj->base.size;
vma->display_alignment = I915_GTT_MIN_ALIGNMENT;
@@ -1032,7 +1031,7 @@ int i915_ggtt_pin(struct i915_vma *vma, struct i915_gem_ww_ctx *ww,
GEM_BUG_ON(!i915_vma_is_ggtt(vma));
#ifdef CONFIG_LOCKDEP
- WARN_ON(!ww && dma_resv_held(vma->resv));
+ WARN_ON(!ww && dma_resv_held(vma->obj->base.resv));
#endif
do {
@@ -1251,19 +1250,19 @@ int _i915_vma_move_to_active(struct i915_vma *vma,
}
if (fence) {
- dma_resv_add_excl_fence(vma->resv, fence);
+ dma_resv_add_excl_fence(vma->obj->base.resv, fence);
obj->write_domain = I915_GEM_DOMAIN_RENDER;
obj->read_domains = 0;
}
} else {
if (!(flags & __EXEC_OBJECT_NO_RESERVE)) {
- err = dma_resv_reserve_shared(vma->resv, 1);
+ err = dma_resv_reserve_shared(vma->obj->base.resv, 1);
if (unlikely(err))
return err;
}
if (fence) {
- dma_resv_add_shared_fence(vma->resv, fence);
+ dma_resv_add_shared_fence(vma->obj->base.resv, fence);
obj->write_domain = 0;
}
}
diff --git a/drivers/gpu/drm/i915/i915_vma.h b/drivers/gpu/drm/i915/i915_vma.h
index 312933c06017..4033aa08d5e4 100644
--- a/drivers/gpu/drm/i915/i915_vma.h
+++ b/drivers/gpu/drm/i915/i915_vma.h
@@ -234,16 +234,16 @@ static inline void __i915_vma_put(struct i915_vma *vma)
kref_put(&vma->ref, i915_vma_release);
}
-#define assert_vma_held(vma) dma_resv_assert_held((vma)->resv)
+#define assert_vma_held(vma) dma_resv_assert_held((vma)->obj->base.resv)
static inline void i915_vma_lock(struct i915_vma *vma)
{
- dma_resv_lock(vma->resv, NULL);
+ dma_resv_lock(vma->obj->base.resv, NULL);
}
static inline void i915_vma_unlock(struct i915_vma *vma)
{
- dma_resv_unlock(vma->resv);
+ dma_resv_unlock(vma->obj->base.resv);
}
int __must_check
diff --git a/drivers/gpu/drm/i915/i915_vma_types.h b/drivers/gpu/drm/i915/i915_vma_types.h
index 4ee6e54799f4..f03fa96a1701 100644
--- a/drivers/gpu/drm/i915/i915_vma_types.h
+++ b/drivers/gpu/drm/i915/i915_vma_types.h
@@ -187,7 +187,6 @@ struct i915_vma {
const struct i915_vma_ops *ops;
struct drm_i915_gem_object *obj;
- struct dma_resv *resv; /** Alias of obj->resv */
struct sg_table *pages;
void __iomem *iomap;
--
2.31.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Intel-gfx] [PATCH 6/6] drm/i915: Drain the ttm delayed workqueue too
2021-11-12 15:32 [Intel-gfx] [PATCH 1/6] drm/i915: move the pre_pin earlier Matthew Auld
` (3 preceding siblings ...)
2021-11-12 15:32 ` [Intel-gfx] [PATCH 5/6] drm/i915: Remove resv from i915_vma Matthew Auld
@ 2021-11-12 15:32 ` Matthew Auld
2021-11-12 16:07 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for series starting with [1/6] drm/i915: move the pre_pin earlier Patchwork
` (3 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Matthew Auld @ 2021-11-12 15:32 UTC (permalink / raw)
To: intel-gfx; +Cc: dri-devel
From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Lets be thorough here. Users of the TTM backend would likely expect this
behaviour.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
---
drivers/gpu/drm/i915/i915_drv.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index da39bf5508ca..9641aab3e2cc 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1819,6 +1819,7 @@ static inline void i915_gem_drain_freed_objects(struct drm_i915_private *i915)
*/
while (atomic_read(&i915->mm.free_count)) {
flush_work(&i915->mm.free_work);
+ flush_delayed_work(&i915->bdev.wq);
rcu_barrier();
}
}
--
2.31.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Intel-gfx] ✗ Fi.CI.DOCS: warning for series starting with [1/6] drm/i915: move the pre_pin earlier
2021-11-12 15:32 [Intel-gfx] [PATCH 1/6] drm/i915: move the pre_pin earlier Matthew Auld
` (4 preceding siblings ...)
2021-11-12 15:32 ` [Intel-gfx] [PATCH 6/6] drm/i915: Drain the ttm delayed workqueue too Matthew Auld
@ 2021-11-12 16:07 ` Patchwork
2021-11-12 16:33 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
` (2 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2021-11-12 16:07 UTC (permalink / raw)
To: Matthew Auld; +Cc: intel-gfx
== Series Details ==
Series: series starting with [1/6] drm/i915: move the pre_pin earlier
URL : https://patchwork.freedesktop.org/series/96859/
State : warning
== Summary ==
$ make htmldocs 2>&1 > /dev/null | grep i915
./drivers/gpu/drm/i915/display/intel_fbc.c:635: warning: Excess function parameter 'i915' description in 'intel_fbc_is_active'
./drivers/gpu/drm/i915/display/intel_fbc.c:1638: warning: Excess function parameter 'i915' description in 'intel_fbc_handle_fifo_underrun_irq'
./drivers/gpu/drm/i915/display/intel_fbc.c:635: warning: Function parameter or member 'fbc' not described in 'intel_fbc_is_active'
./drivers/gpu/drm/i915/display/intel_fbc.c:635: warning: Excess function parameter 'i915' description in 'intel_fbc_is_active'
./drivers/gpu/drm/i915/display/intel_fbc.c:1638: warning: Function parameter or member 'fbc' not described in 'intel_fbc_handle_fifo_underrun_irq'
./drivers/gpu/drm/i915/display/intel_fbc.c:1638: warning: Excess function parameter 'i915' description in 'intel_fbc_handle_fifo_underrun_irq'
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [1/6] drm/i915: move the pre_pin earlier
2021-11-12 15:32 [Intel-gfx] [PATCH 1/6] drm/i915: move the pre_pin earlier Matthew Auld
` (5 preceding siblings ...)
2021-11-12 16:07 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for series starting with [1/6] drm/i915: move the pre_pin earlier Patchwork
@ 2021-11-12 16:33 ` Patchwork
2021-11-12 18:06 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
2021-11-17 11:29 ` [Intel-gfx] [PATCH 1/6] " Thomas Hellström
8 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2021-11-12 16:33 UTC (permalink / raw)
To: Matthew Auld; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 6819 bytes --]
== Series Details ==
Series: series starting with [1/6] drm/i915: move the pre_pin earlier
URL : https://patchwork.freedesktop.org/series/96859/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_10876 -> Patchwork_21575
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/index.html
Participating hosts (34 -> 34)
------------------------------
Additional (3): fi-tgl-u2 fi-tgl-1115g4 fi-pnv-d510
Missing (3): fi-bsw-cyan bat-dg1-6 bat-dg1-5
Known issues
------------
Here are the changes found in Patchwork_21575 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@amdgpu/amd_basic@query-info:
- fi-tgl-1115g4: NOTRUN -> [SKIP][1] ([fdo#109315])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-1115g4/igt@amdgpu/amd_basic@query-info.html
* igt@amdgpu/amd_cs_nop@nop-gfx0:
- fi-tgl-1115g4: NOTRUN -> [SKIP][2] ([fdo#109315] / [i915#2575]) +16 similar issues
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-1115g4/igt@amdgpu/amd_cs_nop@nop-gfx0.html
* igt@core_hotunplug@unbind-rebind:
- fi-tgl-u2: NOTRUN -> [INCOMPLETE][3] ([i915#4006])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-u2/igt@core_hotunplug@unbind-rebind.html
* igt@gem_huc_copy@huc-copy:
- fi-tgl-u2: NOTRUN -> [SKIP][4] ([i915#2190])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-u2/igt@gem_huc_copy@huc-copy.html
- fi-tgl-1115g4: NOTRUN -> [SKIP][5] ([i915#2190])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-1115g4/igt@gem_huc_copy@huc-copy.html
* igt@i915_pm_backlight@basic-brightness:
- fi-tgl-1115g4: NOTRUN -> [SKIP][6] ([i915#1155])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-1115g4/igt@i915_pm_backlight@basic-brightness.html
* igt@kms_chamelium@common-hpd-after-suspend:
- fi-tgl-1115g4: NOTRUN -> [SKIP][7] ([fdo#111827]) +8 similar issues
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-1115g4/igt@kms_chamelium@common-hpd-after-suspend.html
* igt@kms_chamelium@dp-hpd-fast:
- fi-tgl-u2: NOTRUN -> [SKIP][8] ([fdo#109284] / [fdo#111827]) +8 similar issues
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-u2/igt@kms_chamelium@dp-hpd-fast.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- fi-tgl-u2: NOTRUN -> [SKIP][9] ([i915#4103]) +1 similar issue
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
- fi-tgl-1115g4: NOTRUN -> [SKIP][10] ([i915#4103]) +1 similar issue
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-1115g4/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_force_connector_basic@force-load-detect:
- fi-tgl-1115g4: NOTRUN -> [SKIP][11] ([fdo#109285])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-1115g4/igt@kms_force_connector_basic@force-load-detect.html
- fi-tgl-u2: NOTRUN -> [SKIP][12] ([fdo#109285])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-u2/igt@kms_force_connector_basic@force-load-detect.html
* igt@kms_psr@primary_mmap_gtt:
- fi-tgl-1115g4: NOTRUN -> [SKIP][13] ([i915#1072]) +3 similar issues
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-1115g4/igt@kms_psr@primary_mmap_gtt.html
* igt@prime_vgem@basic-userptr:
- fi-pnv-d510: NOTRUN -> [SKIP][14] ([fdo#109271]) +53 similar issues
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-pnv-d510/igt@prime_vgem@basic-userptr.html
- fi-tgl-u2: NOTRUN -> [SKIP][15] ([i915#3301])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-u2/igt@prime_vgem@basic-userptr.html
- fi-tgl-1115g4: NOTRUN -> [SKIP][16] ([i915#3301])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-1115g4/igt@prime_vgem@basic-userptr.html
* igt@runner@aborted:
- fi-tgl-u2: NOTRUN -> [FAIL][17] ([i915#1602] / [i915#2722] / [i915#4312])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-tgl-u2/igt@runner@aborted.html
#### Possible fixes ####
* igt@kms_frontbuffer_tracking@basic:
- fi-cml-u2: [DMESG-WARN][18] ([i915#4269]) -> [PASS][19]
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/fi-cml-u2/igt@kms_frontbuffer_tracking@basic.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/fi-cml-u2/igt@kms_frontbuffer_tracking@basic.html
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
[i915#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
[i915#2722]: https://gitlab.freedesktop.org/drm/intel/issues/2722
[i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
[i915#4006]: https://gitlab.freedesktop.org/drm/intel/issues/4006
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4269]: https://gitlab.freedesktop.org/drm/intel/issues/4269
[i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
Build changes
-------------
* Linux: CI_DRM_10876 -> Patchwork_21575
CI-20190529: 20190529
CI_DRM_10876: 60c931742b2d9635f78dec02e25c76881c2c8699 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_6280: 246bfd31dba6bf184b26b170d91d72c90a54be6b @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_21575: 1314e4be64def198ca61a2ed9ac789623b6ecd82 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
1314e4be64de drm/i915: Drain the ttm delayed workqueue too
a05fd5183733 drm/i915: Remove resv from i915_vma
085b7e60565f drm/i915: vma is always backed by an object.
b564150c66a8 drm/i915: Create a full object for mock_ring, v2.
3572e0afe8d9 drm/i915: Create a dummy object for gen6 ppgtt
aa44e86a0be9 drm/i915: move the pre_pin earlier
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/index.html
[-- Attachment #2: Type: text/html, Size: 8259 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Intel-gfx] ✓ Fi.CI.IGT: success for series starting with [1/6] drm/i915: move the pre_pin earlier
2021-11-12 15:32 [Intel-gfx] [PATCH 1/6] drm/i915: move the pre_pin earlier Matthew Auld
` (6 preceding siblings ...)
2021-11-12 16:33 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
@ 2021-11-12 18:06 ` Patchwork
2021-11-17 11:29 ` [Intel-gfx] [PATCH 1/6] " Thomas Hellström
8 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2021-11-12 18:06 UTC (permalink / raw)
To: Matthew Auld; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 30284 bytes --]
== Series Details ==
Series: series starting with [1/6] drm/i915: move the pre_pin earlier
URL : https://patchwork.freedesktop.org/series/96859/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_10876_full -> Patchwork_21575_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Known issues
------------
Here are the changes found in Patchwork_21575_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_ctx_isolation@preservation-s3@vecs0:
- shard-kbl: NOTRUN -> [DMESG-WARN][1] ([i915#180]) +1 similar issue
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl4/igt@gem_ctx_isolation@preservation-s3@vecs0.html
* igt@gem_eio@in-flight-contexts-immediate:
- shard-tglb: [PASS][2] -> [TIMEOUT][3] ([i915#3063])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-tglb5/igt@gem_eio@in-flight-contexts-immediate.html
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb2/igt@gem_eio@in-flight-contexts-immediate.html
* igt@gem_exec_capture@pi@bcs0:
- shard-skl: NOTRUN -> [INCOMPLETE][4] ([i915#2369])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl7/igt@gem_exec_capture@pi@bcs0.html
* igt@gem_exec_fair@basic-none-rrul@rcs0:
- shard-tglb: NOTRUN -> [FAIL][5] ([i915#2842])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb3/igt@gem_exec_fair@basic-none-rrul@rcs0.html
* igt@gem_exec_fair@basic-none-solo@rcs0:
- shard-apl: [PASS][6] -> [FAIL][7] ([i915#2842])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-apl1/igt@gem_exec_fair@basic-none-solo@rcs0.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl4/igt@gem_exec_fair@basic-none-solo@rcs0.html
* igt@gem_exec_fair@basic-pace@vcs0:
- shard-kbl: [PASS][8] -> [FAIL][9] ([i915#2842])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-kbl7/igt@gem_exec_fair@basic-pace@vcs0.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl6/igt@gem_exec_fair@basic-pace@vcs0.html
* igt@gem_exec_fair@basic-pace@vcs1:
- shard-iclb: [PASS][10] -> [FAIL][11] ([i915#2842])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb4/igt@gem_exec_fair@basic-pace@vcs1.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb2/igt@gem_exec_fair@basic-pace@vcs1.html
* igt@gem_exec_fair@basic-sync@rcs0:
- shard-kbl: [PASS][12] -> [SKIP][13] ([fdo#109271])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-kbl3/igt@gem_exec_fair@basic-sync@rcs0.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl6/igt@gem_exec_fair@basic-sync@rcs0.html
* igt@gem_exec_fair@basic-throttle@rcs0:
- shard-glk: [PASS][14] -> [FAIL][15] ([i915#2842])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-glk7/igt@gem_exec_fair@basic-throttle@rcs0.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-glk4/igt@gem_exec_fair@basic-throttle@rcs0.html
- shard-iclb: [PASS][16] -> [FAIL][17] ([i915#2849])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb4/igt@gem_exec_fair@basic-throttle@rcs0.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb1/igt@gem_exec_fair@basic-throttle@rcs0.html
* igt@gem_mmap_gtt@coherency:
- shard-tglb: NOTRUN -> [SKIP][18] ([fdo#111656])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@gem_mmap_gtt@coherency.html
* igt@gem_pxp@create-regular-buffer:
- shard-tglb: NOTRUN -> [SKIP][19] ([i915#4270]) +1 similar issue
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@gem_pxp@create-regular-buffer.html
* igt@gem_userptr_blits@input-checking:
- shard-apl: NOTRUN -> [DMESG-WARN][20] ([i915#3002]) +1 similar issue
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl7/igt@gem_userptr_blits@input-checking.html
* igt@gem_userptr_blits@vma-merge:
- shard-apl: NOTRUN -> [FAIL][21] ([i915#3318])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl7/igt@gem_userptr_blits@vma-merge.html
* igt@gem_workarounds@suspend-resume-fd:
- shard-kbl: [PASS][22] -> [DMESG-WARN][23] ([i915#180])
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-kbl7/igt@gem_workarounds@suspend-resume-fd.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl7/igt@gem_workarounds@suspend-resume-fd.html
* igt@i915_pm_dc@dc6-psr:
- shard-iclb: [PASS][24] -> [FAIL][25] ([i915#454])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb4/igt@i915_pm_dc@dc6-psr.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb2/igt@i915_pm_dc@dc6-psr.html
* igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
- shard-skl: NOTRUN -> [FAIL][26] ([i915#3743])
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl9/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html
* igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip:
- shard-apl: NOTRUN -> [SKIP][27] ([fdo#109271] / [i915#3777])
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl1/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip.html
* igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_mc_ccs:
- shard-kbl: NOTRUN -> [SKIP][28] ([fdo#109271] / [i915#3886]) +3 similar issues
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl4/igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_mc_ccs.html
* igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs:
- shard-skl: NOTRUN -> [SKIP][29] ([fdo#109271] / [i915#3886]) +4 similar issues
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl9/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html
* igt@kms_ccs@pipe-c-bad-pixel-format-yf_tiled_ccs:
- shard-tglb: NOTRUN -> [SKIP][30] ([i915#3689])
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@kms_ccs@pipe-c-bad-pixel-format-yf_tiled_ccs.html
* igt@kms_ccs@pipe-c-random-ccs-data-y_tiled_gen12_rc_ccs_cc:
- shard-apl: NOTRUN -> [SKIP][31] ([fdo#109271] / [i915#3886]) +5 similar issues
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl7/igt@kms_ccs@pipe-c-random-ccs-data-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_ccs@pipe-d-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc:
- shard-skl: NOTRUN -> [SKIP][32] ([fdo#109271]) +86 similar issues
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl9/igt@kms_ccs@pipe-d-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_chamelium@hdmi-audio:
- shard-apl: NOTRUN -> [SKIP][33] ([fdo#109271] / [fdo#111827]) +9 similar issues
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl1/igt@kms_chamelium@hdmi-audio.html
* igt@kms_color@pipe-b-ctm-0-25:
- shard-skl: [PASS][34] -> [DMESG-WARN][35] ([i915#1982]) +1 similar issue
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-skl6/igt@kms_color@pipe-b-ctm-0-25.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl10/igt@kms_color@pipe-b-ctm-0-25.html
* igt@kms_color_chamelium@pipe-b-ctm-max:
- shard-skl: NOTRUN -> [SKIP][36] ([fdo#109271] / [fdo#111827]) +9 similar issues
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl9/igt@kms_color_chamelium@pipe-b-ctm-max.html
* igt@kms_color_chamelium@pipe-c-ctm-red-to-blue:
- shard-kbl: NOTRUN -> [SKIP][37] ([fdo#109271] / [fdo#111827]) +4 similar issues
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl2/igt@kms_color_chamelium@pipe-c-ctm-red-to-blue.html
* igt@kms_color_chamelium@pipe-d-degamma:
- shard-tglb: NOTRUN -> [SKIP][38] ([fdo#109284] / [fdo#111827]) +3 similar issues
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@kms_color_chamelium@pipe-d-degamma.html
* igt@kms_content_protection@atomic:
- shard-apl: NOTRUN -> [TIMEOUT][39] ([i915#1319])
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl7/igt@kms_content_protection@atomic.html
* igt@kms_content_protection@atomic-dpms:
- shard-kbl: NOTRUN -> [TIMEOUT][40] ([i915#1319])
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl2/igt@kms_content_protection@atomic-dpms.html
* igt@kms_content_protection@dp-mst-lic-type-1:
- shard-tglb: NOTRUN -> [SKIP][41] ([i915#3116])
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@kms_content_protection@dp-mst-lic-type-1.html
* igt@kms_content_protection@uevent:
- shard-apl: NOTRUN -> [FAIL][42] ([i915#2105])
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl7/igt@kms_content_protection@uevent.html
* igt@kms_cursor_crc@pipe-a-cursor-128x42-offscreen:
- shard-iclb: [PASS][43] -> [DMESG-FAIL][44] ([i915#1226])
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb7/igt@kms_cursor_crc@pipe-a-cursor-128x42-offscreen.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb6/igt@kms_cursor_crc@pipe-a-cursor-128x42-offscreen.html
* igt@kms_cursor_crc@pipe-a-cursor-32x10-sliding:
- shard-tglb: NOTRUN -> [SKIP][45] ([i915#3359])
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@kms_cursor_crc@pipe-a-cursor-32x10-sliding.html
* igt@kms_cursor_crc@pipe-d-cursor-32x32-onscreen:
- shard-tglb: NOTRUN -> [SKIP][46] ([i915#3319])
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb3/igt@kms_cursor_crc@pipe-d-cursor-32x32-onscreen.html
* igt@kms_cursor_crc@pipe-d-cursor-512x512-rapid-movement:
- shard-tglb: NOTRUN -> [SKIP][47] ([fdo#109279] / [i915#3359]) +1 similar issue
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@kms_cursor_crc@pipe-d-cursor-512x512-rapid-movement.html
* igt@kms_cursor_edge_walk@pipe-a-128x128-top-edge:
- shard-glk: [PASS][48] -> [DMESG-FAIL][49] ([i915#118] / [i915#1982])
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-glk2/igt@kms_cursor_edge_walk@pipe-a-128x128-top-edge.html
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-glk8/igt@kms_cursor_edge_walk@pipe-a-128x128-top-edge.html
* igt@kms_cursor_legacy@cursora-vs-flipb-atomic:
- shard-tglb: NOTRUN -> [SKIP][50] ([fdo#111825]) +9 similar issues
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@kms_cursor_legacy@cursora-vs-flipb-atomic.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions:
- shard-tglb: NOTRUN -> [SKIP][51] ([i915#4103])
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb3/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html
* igt@kms_fbcon_fbt@fbc-suspend:
- shard-apl: [PASS][52] -> [INCOMPLETE][53] ([i915#180])
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-apl6/igt@kms_fbcon_fbt@fbc-suspend.html
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl8/igt@kms_fbcon_fbt@fbc-suspend.html
- shard-kbl: [PASS][54] -> [INCOMPLETE][55] ([i915#180] / [i915#636])
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-kbl6/igt@kms_fbcon_fbt@fbc-suspend.html
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl4/igt@kms_fbcon_fbt@fbc-suspend.html
* igt@kms_flip@flip-vs-suspend-interruptible@a-dp1:
- shard-apl: [PASS][56] -> [DMESG-WARN][57] ([i915#180]) +5 similar issues
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-apl2/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl4/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html
* igt@kms_flip@plain-flip-fb-recreate-interruptible@c-edp1:
- shard-skl: [PASS][58] -> [FAIL][59] ([i915#2122]) +1 similar issue
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-skl10/igt@kms_flip@plain-flip-fb-recreate-interruptible@c-edp1.html
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl6/igt@kms_flip@plain-flip-fb-recreate-interruptible@c-edp1.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-msflip-blt:
- shard-kbl: NOTRUN -> [SKIP][60] ([fdo#109271]) +35 similar issues
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl4/igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-msflip-blt.html
* igt@kms_pipe_b_c_ivb@disable-pipe-b-enable-pipe-c:
- shard-apl: NOTRUN -> [SKIP][61] ([fdo#109271]) +76 similar issues
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl2/igt@kms_pipe_b_c_ivb@disable-pipe-b-enable-pipe-c.html
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-d:
- shard-skl: NOTRUN -> [SKIP][62] ([fdo#109271] / [i915#533]) +2 similar issues
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl9/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-d.html
* igt@kms_plane_alpha_blend@pipe-b-alpha-basic:
- shard-skl: NOTRUN -> [FAIL][63] ([fdo#108145] / [i915#265]) +1 similar issue
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl9/igt@kms_plane_alpha_blend@pipe-b-alpha-basic.html
* igt@kms_plane_alpha_blend@pipe-c-alpha-opaque-fb:
- shard-apl: NOTRUN -> [FAIL][64] ([fdo#108145] / [i915#265])
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl2/igt@kms_plane_alpha_blend@pipe-c-alpha-opaque-fb.html
* igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min:
- shard-skl: [PASS][65] -> [FAIL][66] ([fdo#108145] / [i915#265]) +1 similar issue
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-skl8/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl3/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
* igt@kms_plane_lowres@pipe-d-tiling-x:
- shard-tglb: NOTRUN -> [SKIP][67] ([i915#3536])
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@kms_plane_lowres@pipe-d-tiling-x.html
* igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping:
- shard-skl: NOTRUN -> [SKIP][68] ([fdo#109271] / [i915#2733])
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl9/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping.html
* igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-3:
- shard-kbl: NOTRUN -> [SKIP][69] ([fdo#109271] / [i915#658])
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl2/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-3.html
* igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-4:
- shard-skl: NOTRUN -> [SKIP][70] ([fdo#109271] / [i915#658])
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl9/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-4.html
* igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-1:
- shard-apl: NOTRUN -> [SKIP][71] ([fdo#109271] / [i915#658])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl2/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-1.html
* igt@kms_psr@psr2_cursor_blt:
- shard-tglb: NOTRUN -> [FAIL][72] ([i915#132] / [i915#3467])
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@kms_psr@psr2_cursor_blt.html
* igt@kms_psr@psr2_cursor_render:
- shard-iclb: [PASS][73] -> [SKIP][74] ([fdo#109441]) +2 similar issues
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb2/igt@kms_psr@psr2_cursor_render.html
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb7/igt@kms_psr@psr2_cursor_render.html
* igt@kms_sequence@queue-busy:
- shard-skl: [PASS][75] -> [FAIL][76] ([i915#2995])
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-skl8/igt@kms_sequence@queue-busy.html
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl3/igt@kms_sequence@queue-busy.html
* igt@kms_vrr@flip-suspend:
- shard-tglb: NOTRUN -> [SKIP][77] ([fdo#109502])
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@kms_vrr@flip-suspend.html
* igt@kms_writeback@writeback-check-output:
- shard-apl: NOTRUN -> [SKIP][78] ([fdo#109271] / [i915#2437]) +1 similar issue
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl7/igt@kms_writeback@writeback-check-output.html
* igt@kms_writeback@writeback-invalid-parameters:
- shard-skl: NOTRUN -> [SKIP][79] ([fdo#109271] / [i915#2437])
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl9/igt@kms_writeback@writeback-invalid-parameters.html
* igt@perf@polling-parameterized:
- shard-skl: [PASS][80] -> [FAIL][81] ([i915#1542])
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-skl8/igt@perf@polling-parameterized.html
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl10/igt@perf@polling-parameterized.html
* igt@prime_nv_test@i915_blt_fill_nv_read:
- shard-tglb: NOTRUN -> [SKIP][82] ([fdo#109291]) +1 similar issue
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@prime_nv_test@i915_blt_fill_nv_read.html
* igt@sysfs_clients@pidname:
- shard-apl: NOTRUN -> [SKIP][83] ([fdo#109271] / [i915#2994])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl2/igt@sysfs_clients@pidname.html
* igt@sysfs_clients@recycle-many:
- shard-tglb: NOTRUN -> [SKIP][84] ([i915#2994])
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb3/igt@sysfs_clients@recycle-many.html
#### Possible fixes ####
* igt@gem_eio@unwedge-stress:
- shard-tglb: [TIMEOUT][85] ([i915#2369] / [i915#3063] / [i915#3648]) -> [PASS][86]
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-tglb8/igt@gem_eio@unwedge-stress.html
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@gem_eio@unwedge-stress.html
* igt@gem_exec_fair@basic-none@rcs0:
- shard-glk: [FAIL][87] ([i915#2842]) -> [PASS][88]
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-glk3/igt@gem_exec_fair@basic-none@rcs0.html
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-glk5/igt@gem_exec_fair@basic-none@rcs0.html
* igt@gem_exec_fair@basic-pace-share@rcs0:
- shard-tglb: [FAIL][89] ([i915#2842]) -> [PASS][90]
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-tglb2/igt@gem_exec_fair@basic-pace-share@rcs0.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb2/igt@gem_exec_fair@basic-pace-share@rcs0.html
* igt@gem_exec_fair@basic-pace@vcs0:
- shard-iclb: [FAIL][91] ([i915#2842]) -> [PASS][92]
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb4/igt@gem_exec_fair@basic-pace@vcs0.html
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb2/igt@gem_exec_fair@basic-pace@vcs0.html
* igt@gem_exec_fair@basic-pace@vcs1:
- shard-kbl: [FAIL][93] ([i915#2842]) -> [PASS][94]
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-kbl7/igt@gem_exec_fair@basic-pace@vcs1.html
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl6/igt@gem_exec_fair@basic-pace@vcs1.html
* igt@gem_exec_schedule@u-submit-golden-slice@vecs0:
- shard-skl: [INCOMPLETE][95] ([i915#3797]) -> [PASS][96]
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-skl2/igt@gem_exec_schedule@u-submit-golden-slice@vecs0.html
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl1/igt@gem_exec_schedule@u-submit-golden-slice@vecs0.html
* igt@i915_suspend@fence-restore-tiled2untiled:
- shard-kbl: [DMESG-WARN][97] ([i915#180]) -> [PASS][98]
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-kbl7/igt@i915_suspend@fence-restore-tiled2untiled.html
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl2/igt@i915_suspend@fence-restore-tiled2untiled.html
* igt@kms_big_fb@y-tiled-32bpp-rotate-0:
- shard-glk: [DMESG-WARN][99] ([i915#118]) -> [PASS][100]
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-glk6/igt@kms_big_fb@y-tiled-32bpp-rotate-0.html
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-glk1/igt@kms_big_fb@y-tiled-32bpp-rotate-0.html
* igt@kms_cursor_crc@pipe-a-cursor-128x42-offscreen:
- shard-glk: [FAIL][101] ([i915#3444]) -> [PASS][102]
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-glk7/igt@kms_cursor_crc@pipe-a-cursor-128x42-offscreen.html
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-glk4/igt@kms_cursor_crc@pipe-a-cursor-128x42-offscreen.html
* igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
- shard-iclb: [FAIL][103] ([i915#2346]) -> [PASS][104]
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb5/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
* igt@kms_fbcon_fbt@fbc-suspend:
- shard-tglb: [INCOMPLETE][105] ([i915#456]) -> [PASS][106]
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-tglb7/igt@kms_fbcon_fbt@fbc-suspend.html
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb3/igt@kms_fbcon_fbt@fbc-suspend.html
* igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@ab-hdmi-a1-hdmi-a2:
- shard-glk: [FAIL][107] ([i915#79]) -> [PASS][108]
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-glk4/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@ab-hdmi-a1-hdmi-a2.html
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-glk7/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@ab-hdmi-a1-hdmi-a2.html
* igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@c-edp1:
- shard-skl: [FAIL][109] ([i915#2122]) -> [PASS][110] +3 similar issues
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-skl2/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@c-edp1.html
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl1/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@c-edp1.html
* igt@kms_flip@flip-vs-expired-vblank@b-edp1:
- shard-skl: [FAIL][111] ([i915#79]) -> [PASS][112]
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-skl2/igt@kms_flip@flip-vs-expired-vblank@b-edp1.html
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl1/igt@kms_flip@flip-vs-expired-vblank@b-edp1.html
* igt@kms_frontbuffer_tracking@fbc-suspend:
- shard-apl: [DMESG-WARN][113] ([i915#180]) -> [PASS][114] +3 similar issues
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-apl6/igt@kms_frontbuffer_tracking@fbc-suspend.html
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-apl2/igt@kms_frontbuffer_tracking@fbc-suspend.html
* igt@kms_frontbuffer_tracking@psr-suspend:
- shard-tglb: [INCOMPLETE][115] ([i915#2411] / [i915#456]) -> [PASS][116]
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-tglb7/igt@kms_frontbuffer_tracking@psr-suspend.html
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-tglb6/igt@kms_frontbuffer_tracking@psr-suspend.html
* igt@kms_plane_alpha_blend@pipe-b-coverage-7efc:
- shard-skl: [FAIL][117] ([fdo#108145] / [i915#265]) -> [PASS][118]
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-skl4/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl2/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html
* igt@kms_psr@psr2_basic:
- shard-iclb: [SKIP][119] ([fdo#109441]) -> [PASS][120] +2 similar issues
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb4/igt@kms_psr@psr2_basic.html
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb2/igt@kms_psr@psr2_basic.html
* igt@kms_vblank@pipe-a-ts-continuation-suspend:
- shard-kbl: [DMESG-WARN][121] ([i915#180] / [i915#295]) -> [PASS][122]
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-kbl7/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl4/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
#### Warnings ####
* igt@gem_exec_fair@basic-none-rrul@rcs0:
- shard-iclb: [FAIL][123] ([i915#2852]) -> [FAIL][124] ([i915#2842])
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb3/igt@gem_exec_fair@basic-none-rrul@rcs0.html
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb3/igt@gem_exec_fair@basic-none-rrul@rcs0.html
* igt@i915_pm_dc@dc9-dpms:
- shard-iclb: [SKIP][125] ([i915#4281]) -> [FAIL][126] ([i915#4275])
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb3/igt@i915_pm_dc@dc9-dpms.html
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb1/igt@i915_pm_dc@dc9-dpms.html
* igt@i915_pm_rc6_residency@rc6-fence:
- shard-iclb: [WARN][127] ([i915#2684]) -> [WARN][128] ([i915#1804] / [i915#2684])
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb8/igt@i915_pm_rc6_residency@rc6-fence.html
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb4/igt@i915_pm_rc6_residency@rc6-fence.html
* igt@i915_pm_rc6_residency@rc6-idle:
- shard-iclb: [WARN][129] ([i915#1804] / [i915#2684]) -> [WARN][130] ([i915#2684])
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb6/igt@i915_pm_rc6_residency@rc6-idle.html
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb8/igt@i915_pm_rc6_residency@rc6-idle.html
* igt@kms_flip@flip-vs-expired-vblank@c-edp1:
- shard-skl: [FAIL][131] ([i915#2122]) -> [FAIL][132] ([i915#79])
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-skl2/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-skl1/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html
* igt@kms_psr2_sf@plane-move-sf-dmg-area-1:
- shard-iclb: [SKIP][133] ([i915#2920]) -> [SKIP][134] ([i915#658])
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb2/igt@kms_psr2_sf@plane-move-sf-dmg-area-1.html
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb4/igt@kms_psr2_sf@plane-move-sf-dmg-area-1.html
* igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-2:
- shard-iclb: [SKIP][135] ([i915#658]) -> [SKIP][136] ([i915#2920])
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb6/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-2.html
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb2/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-2.html
* igt@kms_psr2_su@page_flip:
- shard-iclb: [FAIL][137] ([i915#4148]) -> [SKIP][138] ([fdo#109642] / [fdo#111068] / [i915#658])
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-iclb2/igt@kms_psr2_su@page_flip.html
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-iclb7/igt@kms_psr2_su@page_flip.html
* igt@runner@aborted:
- shard-kbl: ([FAIL][139], [FAIL][140], [FAIL][141], [FAIL][142]) ([i915#180] / [i915#1814] / [i915#3002] / [i915#3363] / [i915#4312] / [i915#602]) -> ([FAIL][143], [FAIL][144], [FAIL][145], [FAIL][146], [FAIL][147]) ([i915#1436] / [i915#180] / [i915#3002] / [i915#3363] / [i915#4312] / [i915#92])
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-kbl7/igt@runner@aborted.html
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-kbl3/igt@runner@aborted.html
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-kbl7/igt@runner@aborted.html
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10876/shard-kbl7/igt@runner@aborted.html
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl4/igt@runner@aborted.html
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl3/igt@runner@aborted.html
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl6/igt@runner@aborted.html
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl4/igt@runner@aborted.html
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/shard-kbl7/igt@runner@aborted.html
- shard-apl: ([FA
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21575/index.html
[-- Attachment #2: Type: text/html, Size: 33965 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Intel-gfx] [PATCH 1/6] drm/i915: move the pre_pin earlier
2021-11-12 15:32 [Intel-gfx] [PATCH 1/6] drm/i915: move the pre_pin earlier Matthew Auld
` (7 preceding siblings ...)
2021-11-12 18:06 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
@ 2021-11-17 11:29 ` Thomas Hellström
8 siblings, 0 replies; 10+ messages in thread
From: Thomas Hellström @ 2021-11-17 11:29 UTC (permalink / raw)
To: Matthew Auld, intel-gfx; +Cc: dri-devel
On Fri, 2021-11-12 at 15:32 +0000, Matthew Auld wrote:
> In intel_context_do_pin_ww, when calling into the pre_pin hook(which
> is
> passed the ww context) it could in theory return -EDEADLK(which is
> very
> likely with debug kernels), once we start adding more ww locking in
> there,
> like in the next patch. If so then we need to be mindful of having to
> restart the do_pin at this point.
>
> If this is the kernel_context, or some other early in-kernel context
> where we have yet to setup the default_state, then we always inhibit
> the
> context restore, and instead rely on the delayed active_release to
> set
> the CONTEXT_VALID_BIT for us(if we even care), which should indicate
> that we have context switched away, and that our newly saved context
> state should now be valid. However, since we currently grab the
> active
> reference before the potential ww dance, we can end up setting the
> CONTEXT_VALID_BIT much too early, if we need to backoff, and then
> upon
> re-trying the do_pin, we could potentially cause the hardware to
> incorrectly load some garbage context state when later context
> switching
> to that context, but at the very least this will trigger the
> GEM_BUG_ON() in __engine_unpark. For now let's just move any ww dance
> stuff prior to arming the active reference.
>
> For normal user contexts this shouldn't be a concern, since we should
> already have the default_state ready when initialising the lrc state,
> and so there should be no concern with active_release somehow
> prematurely setting the CONTEXT_VALID_BIT.
>
> Signed-off-by: Matthew Auld <matthew.auld@intel.com>
> Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> ---
> drivers/gpu/drm/i915/gt/intel_context.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/intel_context.c
> b/drivers/gpu/drm/i915/gt/intel_context.c
> index 5634d14052bc..ad44860faaf3 100644
> --- a/drivers/gpu/drm/i915/gt/intel_context.c
> +++ b/drivers/gpu/drm/i915/gt/intel_context.c
> @@ -228,17 +228,17 @@ int __intel_context_do_pin_ww(struct
> intel_context *ce,
> if (err)
> return err;
>
> - err = i915_active_acquire(&ce->active);
> + err = ce->ops->pre_pin(ce, ww, &vaddr);
> if (err)
> goto err_ctx_unpin;
>
> - err = ce->ops->pre_pin(ce, ww, &vaddr);
> + err = i915_active_acquire(&ce->active);
> if (err)
> - goto err_release;
> + goto err_post_unpin;
Hmm, If i915_active_acquire() fails, wouldn't we end up calling
i915_active_release() here?
Thanks,
Thomas
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2021-11-17 11:30 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-11-12 15:32 [Intel-gfx] [PATCH 1/6] drm/i915: move the pre_pin earlier Matthew Auld
2021-11-12 15:32 ` [Intel-gfx] [PATCH 2/6] drm/i915: Create a dummy object for gen6 ppgtt Matthew Auld
2021-11-12 15:32 ` [Intel-gfx] [PATCH 3/6] drm/i915: Create a full object for mock_ring, v2 Matthew Auld
2021-11-12 15:32 ` [Intel-gfx] [PATCH 4/6] drm/i915: vma is always backed by an object Matthew Auld
2021-11-12 15:32 ` [Intel-gfx] [PATCH 5/6] drm/i915: Remove resv from i915_vma Matthew Auld
2021-11-12 15:32 ` [Intel-gfx] [PATCH 6/6] drm/i915: Drain the ttm delayed workqueue too Matthew Auld
2021-11-12 16:07 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for series starting with [1/6] drm/i915: move the pre_pin earlier Patchwork
2021-11-12 16:33 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2021-11-12 18:06 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
2021-11-17 11:29 ` [Intel-gfx] [PATCH 1/6] " Thomas Hellström
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox