* [Intel-gfx] [PATCH] drm/i915/gem: Limit struct_mutex to eb_reserve
@ 2020-03-05 14:02 Chris Wilson
2020-03-05 15:51 ` Mika Kuoppala
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Chris Wilson @ 2020-03-05 14:02 UTC (permalink / raw)
To: intel-gfx
We only need to serialise the multiple pinning during the eb_reserve
phase. Ideally this would be using the vm->mutex as an outer lock, or
using a composite global mutex (ww_mutex), but at the moment we are
using struct_mutex for the group.
Fixes: 003d8b9143a6 ("drm/i915/gem: Only call eb_lookup_vma once during execbuf ioctl")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
---
.../gpu/drm/i915/gem/i915_gem_execbuffer.c | 51 ++++++++-----------
drivers/gpu/drm/i915/i915_drv.h | 6 ---
2 files changed, 20 insertions(+), 37 deletions(-)
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
index 7bb27f382af7..faa5b5c99a9a 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
@@ -610,7 +610,7 @@ static int eb_reserve(struct i915_execbuffer *eb)
struct list_head last;
struct eb_vma *ev;
unsigned int i, pass;
- int err;
+ int err = 0;
/*
* Attempt to pin all of the buffers into the GTT.
@@ -626,8 +626,10 @@ static int eb_reserve(struct i915_execbuffer *eb)
* room for the earlier objects *unless* we need to defragment.
*/
+ if (mutex_lock_interruptible(&eb->i915->drm.struct_mutex))
+ return -EINTR;
+
pass = 0;
- err = 0;
do {
list_for_each_entry(ev, &eb->unbound, bind_link) {
err = eb_reserve_vma(eb, ev, pin_flags);
@@ -635,7 +637,7 @@ static int eb_reserve(struct i915_execbuffer *eb)
break;
}
if (!(err == -ENOSPC || err == -EAGAIN))
- return err;
+ break;
/* Resort *all* the objects into priority order */
INIT_LIST_HEAD(&eb->unbound);
@@ -666,7 +668,9 @@ static int eb_reserve(struct i915_execbuffer *eb)
list_splice_tail(&last, &eb->unbound);
if (err == -EAGAIN) {
+ mutex_unlock(&eb->i915->drm.struct_mutex);
flush_workqueue(eb->i915->mm.userptr_wq);
+ mutex_lock(&eb->i915->drm.struct_mutex);
continue;
}
@@ -680,15 +684,20 @@ static int eb_reserve(struct i915_execbuffer *eb)
err = i915_gem_evict_vm(eb->context->vm);
mutex_unlock(&eb->context->vm->mutex);
if (err)
- return err;
+ goto unlock;
break;
default:
- return -ENOSPC;
+ err = -ENOSPC;
+ goto unlock;
}
pin_flags = PIN_USER;
} while (1);
+
+unlock:
+ mutex_unlock(&eb->i915->drm.struct_mutex);
+ return err;
}
static unsigned int eb_batch_index(const struct i915_execbuffer *eb)
@@ -1631,7 +1640,6 @@ static int eb_prefault_relocations(const struct i915_execbuffer *eb)
static noinline int eb_relocate_slow(struct i915_execbuffer *eb)
{
- struct drm_device *dev = &eb->i915->drm;
bool have_copy = false;
struct eb_vma *ev;
int err = 0;
@@ -1642,8 +1650,6 @@ static noinline int eb_relocate_slow(struct i915_execbuffer *eb)
goto out;
}
- mutex_unlock(&dev->struct_mutex);
-
/*
* We take 3 passes through the slowpatch.
*
@@ -1666,21 +1672,8 @@ static noinline int eb_relocate_slow(struct i915_execbuffer *eb)
cond_resched();
err = 0;
}
- if (err) {
- mutex_lock(&dev->struct_mutex);
- goto out;
- }
-
- /* A frequent cause for EAGAIN are currently unavailable client pages */
- flush_workqueue(eb->i915->mm.userptr_wq);
-
- err = i915_mutex_lock_interruptible(dev);
- if (err) {
- mutex_lock(&dev->struct_mutex);
+ if (err)
goto out;
- }
-
- GEM_BUG_ON(!eb->batch);
list_for_each_entry(ev, &eb->relocs, reloc_link) {
if (!have_copy) {
@@ -1738,9 +1731,11 @@ static int eb_relocate(struct i915_execbuffer *eb)
if (err)
return err;
- err = eb_reserve(eb);
- if (err)
- return err;
+ if (!list_empty(&eb->unbound)) {
+ err = eb_reserve(eb);
+ if (err)
+ return err;
+ }
/* The objects are in their final locations, apply the relocations. */
if (eb->args->flags & __EXEC_HAS_RELOC) {
@@ -2690,10 +2685,6 @@ i915_gem_do_execbuffer(struct drm_device *dev,
if (unlikely(err))
goto err_context;
- err = i915_mutex_lock_interruptible(dev);
- if (err)
- goto err_engine;
-
err = eb_relocate(&eb);
if (err) {
/*
@@ -2837,8 +2828,6 @@ i915_gem_do_execbuffer(struct drm_device *dev,
eb_release_vmas(&eb);
if (eb.trampoline)
i915_vma_unpin(eb.trampoline);
- mutex_unlock(&dev->struct_mutex);
-err_engine:
eb_unpin_engine(&eb);
err_context:
i915_gem_context_put(eb.gem_context);
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 123d0fadfafc..c081f4ec87df 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1734,12 +1734,6 @@ int i915_gem_object_unbind(struct drm_i915_gem_object *obj,
void i915_gem_runtime_suspend(struct drm_i915_private *dev_priv);
-static inline int __must_check
-i915_mutex_lock_interruptible(struct drm_device *dev)
-{
- return mutex_lock_interruptible(&dev->struct_mutex);
-}
-
int i915_gem_dumb_create(struct drm_file *file_priv,
struct drm_device *dev,
struct drm_mode_create_dumb *args);
--
2.25.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915/gem: Limit struct_mutex to eb_reserve
2020-03-05 14:02 [Intel-gfx] [PATCH] drm/i915/gem: Limit struct_mutex to eb_reserve Chris Wilson
@ 2020-03-05 15:51 ` Mika Kuoppala
2020-03-06 1:04 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm/i915/gem: Limit struct_mutex to eb_reserve (rev2) Patchwork
2020-03-06 1:18 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork
2 siblings, 0 replies; 4+ messages in thread
From: Mika Kuoppala @ 2020-03-05 15:51 UTC (permalink / raw)
To: Chris Wilson, intel-gfx
Chris Wilson <chris@chris-wilson.co.uk> writes:
> We only need to serialise the multiple pinning during the eb_reserve
> phase. Ideally this would be using the vm->mutex as an outer lock, or
> using a composite global mutex (ww_mutex), but at the moment we are
> using struct_mutex for the group.
>
> Fixes: 003d8b9143a6 ("drm/i915/gem: Only call eb_lookup_vma once during execbuf ioctl")
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> ---
> .../gpu/drm/i915/gem/i915_gem_execbuffer.c | 51 ++++++++-----------
> drivers/gpu/drm/i915/i915_drv.h | 6 ---
> 2 files changed, 20 insertions(+), 37 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
> index 7bb27f382af7..faa5b5c99a9a 100644
> --- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
> @@ -610,7 +610,7 @@ static int eb_reserve(struct i915_execbuffer *eb)
> struct list_head last;
> struct eb_vma *ev;
> unsigned int i, pass;
> - int err;
> + int err = 0;
>
> /*
> * Attempt to pin all of the buffers into the GTT.
> @@ -626,8 +626,10 @@ static int eb_reserve(struct i915_execbuffer *eb)
> * room for the earlier objects *unless* we need to defragment.
> */
>
> + if (mutex_lock_interruptible(&eb->i915->drm.struct_mutex))
> + return -EINTR;
> +
> pass = 0;
> - err = 0;
> do {
> list_for_each_entry(ev, &eb->unbound, bind_link) {
> err = eb_reserve_vma(eb, ev, pin_flags);
> @@ -635,7 +637,7 @@ static int eb_reserve(struct i915_execbuffer *eb)
> break;
> }
> if (!(err == -ENOSPC || err == -EAGAIN))
> - return err;
> + break;
>
> /* Resort *all* the objects into priority order */
> INIT_LIST_HEAD(&eb->unbound);
> @@ -666,7 +668,9 @@ static int eb_reserve(struct i915_execbuffer *eb)
> list_splice_tail(&last, &eb->unbound);
>
> if (err == -EAGAIN) {
> + mutex_unlock(&eb->i915->drm.struct_mutex);
> flush_workqueue(eb->i915->mm.userptr_wq);
> + mutex_lock(&eb->i915->drm.struct_mutex);
General curiousity of what mechanism prevents the possible jail of -EAGAIN
looping?
For the fix tho,
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> continue;
> }
>
> @@ -680,15 +684,20 @@ static int eb_reserve(struct i915_execbuffer *eb)
> err = i915_gem_evict_vm(eb->context->vm);
> mutex_unlock(&eb->context->vm->mutex);
> if (err)
> - return err;
> + goto unlock;
> break;
>
> default:
> - return -ENOSPC;
> + err = -ENOSPC;
> + goto unlock;
> }
>
> pin_flags = PIN_USER;
> } while (1);
> +
> +unlock:
> + mutex_unlock(&eb->i915->drm.struct_mutex);
> + return err;
> }
>
> static unsigned int eb_batch_index(const struct i915_execbuffer *eb)
> @@ -1631,7 +1640,6 @@ static int eb_prefault_relocations(const struct i915_execbuffer *eb)
>
> static noinline int eb_relocate_slow(struct i915_execbuffer *eb)
> {
> - struct drm_device *dev = &eb->i915->drm;
> bool have_copy = false;
> struct eb_vma *ev;
> int err = 0;
> @@ -1642,8 +1650,6 @@ static noinline int eb_relocate_slow(struct i915_execbuffer *eb)
> goto out;
> }
>
> - mutex_unlock(&dev->struct_mutex);
> -
> /*
> * We take 3 passes through the slowpatch.
> *
> @@ -1666,21 +1672,8 @@ static noinline int eb_relocate_slow(struct i915_execbuffer *eb)
> cond_resched();
> err = 0;
> }
> - if (err) {
> - mutex_lock(&dev->struct_mutex);
> - goto out;
> - }
> -
> - /* A frequent cause for EAGAIN are currently unavailable client pages */
> - flush_workqueue(eb->i915->mm.userptr_wq);
> -
> - err = i915_mutex_lock_interruptible(dev);
> - if (err) {
> - mutex_lock(&dev->struct_mutex);
> + if (err)
> goto out;
> - }
> -
> - GEM_BUG_ON(!eb->batch);
>
> list_for_each_entry(ev, &eb->relocs, reloc_link) {
> if (!have_copy) {
> @@ -1738,9 +1731,11 @@ static int eb_relocate(struct i915_execbuffer *eb)
> if (err)
> return err;
>
> - err = eb_reserve(eb);
> - if (err)
> - return err;
> + if (!list_empty(&eb->unbound)) {
> + err = eb_reserve(eb);
> + if (err)
> + return err;
> + }
>
> /* The objects are in their final locations, apply the relocations. */
> if (eb->args->flags & __EXEC_HAS_RELOC) {
> @@ -2690,10 +2685,6 @@ i915_gem_do_execbuffer(struct drm_device *dev,
> if (unlikely(err))
> goto err_context;
>
> - err = i915_mutex_lock_interruptible(dev);
> - if (err)
> - goto err_engine;
> -
> err = eb_relocate(&eb);
> if (err) {
> /*
> @@ -2837,8 +2828,6 @@ i915_gem_do_execbuffer(struct drm_device *dev,
> eb_release_vmas(&eb);
> if (eb.trampoline)
> i915_vma_unpin(eb.trampoline);
> - mutex_unlock(&dev->struct_mutex);
> -err_engine:
> eb_unpin_engine(&eb);
> err_context:
> i915_gem_context_put(eb.gem_context);
> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
> index 123d0fadfafc..c081f4ec87df 100644
> --- a/drivers/gpu/drm/i915/i915_drv.h
> +++ b/drivers/gpu/drm/i915/i915_drv.h
> @@ -1734,12 +1734,6 @@ int i915_gem_object_unbind(struct drm_i915_gem_object *obj,
>
> void i915_gem_runtime_suspend(struct drm_i915_private *dev_priv);
>
> -static inline int __must_check
> -i915_mutex_lock_interruptible(struct drm_device *dev)
> -{
> - return mutex_lock_interruptible(&dev->struct_mutex);
> -}
> -
> int i915_gem_dumb_create(struct drm_file *file_priv,
> struct drm_device *dev,
> struct drm_mode_create_dumb *args);
> --
> 2.25.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm/i915/gem: Limit struct_mutex to eb_reserve (rev2)
2020-03-05 14:02 [Intel-gfx] [PATCH] drm/i915/gem: Limit struct_mutex to eb_reserve Chris Wilson
2020-03-05 15:51 ` Mika Kuoppala
@ 2020-03-06 1:04 ` Patchwork
2020-03-06 1:18 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork
2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2020-03-06 1:04 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Limit struct_mutex to eb_reserve (rev2)
URL : https://patchwork.freedesktop.org/series/74291/
State : warning
== Summary ==
$ make htmldocs 2>&1 > /dev/null | grep i915
./drivers/gpu/drm/i915/display/intel_dpll_mgr.h:285: warning: Function parameter or member 'get_freq' not described in 'intel_shared_dpll_funcs'
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915/gem: Limit struct_mutex to eb_reserve (rev2)
2020-03-05 14:02 [Intel-gfx] [PATCH] drm/i915/gem: Limit struct_mutex to eb_reserve Chris Wilson
2020-03-05 15:51 ` Mika Kuoppala
2020-03-06 1:04 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm/i915/gem: Limit struct_mutex to eb_reserve (rev2) Patchwork
@ 2020-03-06 1:18 ` Patchwork
2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2020-03-06 1:18 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Limit struct_mutex to eb_reserve (rev2)
URL : https://patchwork.freedesktop.org/series/74291/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_8071 -> Patchwork_16842
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_16842 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_16842, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_16842:
### IGT changes ###
#### Possible regressions ####
* igt@gem_exec_parallel@basic:
- fi-icl-guc: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-icl-guc/igt@gem_exec_parallel@basic.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-icl-guc/igt@gem_exec_parallel@basic.html
* igt@gem_exec_parallel@contexts:
- fi-skl-guc: [PASS][3] -> [TIMEOUT][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-skl-guc/igt@gem_exec_parallel@contexts.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-skl-guc/igt@gem_exec_parallel@contexts.html
- fi-icl-dsi: [PASS][5] -> [TIMEOUT][6] +9 similar issues
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-icl-dsi/igt@gem_exec_parallel@contexts.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-icl-dsi/igt@gem_exec_parallel@contexts.html
- fi-skl-6600u: [PASS][7] -> [TIMEOUT][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-skl-6600u/igt@gem_exec_parallel@contexts.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-skl-6600u/igt@gem_exec_parallel@contexts.html
- fi-cfl-8700k: [PASS][9] -> [TIMEOUT][10] +9 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-cfl-8700k/igt@gem_exec_parallel@contexts.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-cfl-8700k/igt@gem_exec_parallel@contexts.html
- fi-skl-lmem: NOTRUN -> [TIMEOUT][11]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-skl-lmem/igt@gem_exec_parallel@contexts.html
- fi-skl-6700k2: [PASS][12] -> [TIMEOUT][13]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-skl-6700k2/igt@gem_exec_parallel@contexts.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-skl-6700k2/igt@gem_exec_parallel@contexts.html
* igt@gem_exec_parallel@fds:
- fi-cml-s: [PASS][14] -> [TIMEOUT][15] +8 similar issues
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-cml-s/igt@gem_exec_parallel@fds.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-cml-s/igt@gem_exec_parallel@fds.html
- fi-cfl-guc: [PASS][16] -> [TIMEOUT][17] +9 similar issues
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-cfl-guc/igt@gem_exec_parallel@fds.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-cfl-guc/igt@gem_exec_parallel@fds.html
* igt@gem_exec_store@basic-all:
- fi-cfl-8109u: [PASS][18] -> [TIMEOUT][19] +10 similar issues
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-cfl-8109u/igt@gem_exec_store@basic-all.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-cfl-8109u/igt@gem_exec_store@basic-all.html
- fi-apl-guc: [PASS][20] -> [TIMEOUT][21] +8 similar issues
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-apl-guc/igt@gem_exec_store@basic-all.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-apl-guc/igt@gem_exec_store@basic-all.html
- fi-kbl-x1275: [PASS][22] -> [TIMEOUT][23] +9 similar issues
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-kbl-x1275/igt@gem_exec_store@basic-all.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-kbl-x1275/igt@gem_exec_store@basic-all.html
- fi-icl-y: [PASS][24] -> [TIMEOUT][25] +9 similar issues
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-icl-y/igt@gem_exec_store@basic-all.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-icl-y/igt@gem_exec_store@basic-all.html
* igt@gem_exec_suspend@basic:
- fi-icl-u2: [PASS][26] -> [TIMEOUT][27] +9 similar issues
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-icl-u2/igt@gem_exec_suspend@basic.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-icl-u2/igt@gem_exec_suspend@basic.html
* igt@gem_exec_suspend@basic-s0:
- fi-cml-u2: [PASS][28] -> [TIMEOUT][29] +8 similar issues
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-cml-u2/igt@gem_exec_suspend@basic-s0.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-cml-u2/igt@gem_exec_suspend@basic-s0.html
- fi-kbl-r: [PASS][30] -> [TIMEOUT][31] +9 similar issues
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-kbl-r/igt@gem_exec_suspend@basic-s0.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-kbl-r/igt@gem_exec_suspend@basic-s0.html
* igt@gem_exec_suspend@basic-s3:
- fi-kbl-guc: [PASS][32] -> [TIMEOUT][33] +8 similar issues
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-kbl-guc/igt@gem_exec_suspend@basic-s3.html
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-kbl-guc/igt@gem_exec_suspend@basic-s3.html
- fi-kbl-8809g: [PASS][34] -> [TIMEOUT][35] +8 similar issues
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-kbl-8809g/igt@gem_exec_suspend@basic-s3.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-kbl-8809g/igt@gem_exec_suspend@basic-s3.html
- fi-bdw-5557u: NOTRUN -> [TIMEOUT][36] +8 similar issues
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-bdw-5557u/igt@gem_exec_suspend@basic-s3.html
* igt@gem_flink_basic@bad-open:
- fi-kbl-7500u: [PASS][37] -> [TIMEOUT][38] +9 similar issues
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-kbl-7500u/igt@gem_flink_basic@bad-open.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-kbl-7500u/igt@gem_flink_basic@bad-open.html
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* igt@gem_exec_parallel@contexts:
- {fi-tgl-u}: [PASS][39] -> [TIMEOUT][40]
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-tgl-u/igt@gem_exec_parallel@contexts.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-tgl-u/igt@gem_exec_parallel@contexts.html
Known issues
------------
Here are the changes found in Patchwork_16842 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_parallel@basic:
- fi-glk-dsi: [PASS][41] -> [INCOMPLETE][42] ([i915#58] / [k.org#198133])
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-glk-dsi/igt@gem_exec_parallel@basic.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-glk-dsi/igt@gem_exec_parallel@basic.html
* igt@gem_exec_parallel@fds:
- fi-skl-guc: [PASS][43] -> [TIMEOUT][44] ([i915#1084]) +8 similar issues
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-skl-guc/igt@gem_exec_parallel@fds.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-skl-guc/igt@gem_exec_parallel@fds.html
* igt@gem_exec_store@basic-all:
- fi-skl-6600u: [PASS][45] -> [TIMEOUT][46] ([i915#1084]) +9 similar issues
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-skl-6600u/igt@gem_exec_store@basic-all.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-skl-6600u/igt@gem_exec_store@basic-all.html
* igt@gem_exec_suspend@basic-s4-devices:
- fi-tgl-y: [PASS][47] -> [FAIL][48] ([CI#94])
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-tgl-y/igt@gem_exec_suspend@basic-s4-devices.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-tgl-y/igt@gem_exec_suspend@basic-s4-devices.html
* igt@gem_flink_basic@bad-flink:
- fi-skl-6700k2: [PASS][49] -> [TIMEOUT][50] ([i915#1084]) +7 similar issues
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-skl-6700k2/igt@gem_flink_basic@bad-flink.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-skl-6700k2/igt@gem_flink_basic@bad-flink.html
* igt@prime_self_import@basic-with_one_bo_two_files:
- fi-tgl-y: [PASS][51] -> [DMESG-WARN][52] ([CI#94] / [i915#402]) +1 similar issue
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-tgl-y/igt@prime_self_import@basic-with_one_bo_two_files.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-tgl-y/igt@prime_self_import@basic-with_one_bo_two_files.html
#### Possible fixes ####
* igt@i915_getparams_basic@basic-subslice-total:
- fi-tgl-y: [DMESG-WARN][53] ([CI#94] / [i915#402]) -> [PASS][54] +1 similar issue
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8071/fi-tgl-y/igt@i915_getparams_basic@basic-subslice-total.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/fi-tgl-y/igt@i915_getparams_basic@basic-subslice-total.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[CI#94]: https://gitlab.freedesktop.org/gfx-ci/i915-infra/issues/94
[fdo#112126]: https://bugs.freedesktop.org/show_bug.cgi?id=112126
[i915#1084]: https://gitlab.freedesktop.org/drm/intel/issues/1084
[i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402
[i915#58]: https://gitlab.freedesktop.org/drm/intel/issues/58
[k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133
Participating hosts (48 -> 43)
------------------------------
Additional (4): fi-skl-lmem fi-bdw-5557u fi-ivb-3770 fi-snb-2600
Missing (9): fi-ilk-m540 fi-tgl-dsi fi-hsw-4200u fi-skl-6770hq fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-byt-clapper fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_8071 -> Patchwork_16842
CI-20190529: 20190529
CI_DRM_8071: c9eab2d6a1df271afd72c2ef771d4590b6baa108 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5495: 22df72de8affcec22d9f354bb6148d77f60cc580 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_16842: 6274a5c199895d36b2a43f0192abedbcba1137f6 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
6274a5c19989 drm/i915/gem: Limit struct_mutex to eb_reserve
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16842/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-03-06 1:18 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-05 14:02 [Intel-gfx] [PATCH] drm/i915/gem: Limit struct_mutex to eb_reserve Chris Wilson
2020-03-05 15:51 ` Mika Kuoppala
2020-03-06 1:04 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm/i915/gem: Limit struct_mutex to eb_reserve (rev2) Patchwork
2020-03-06 1:18 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.