* [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
@ 2020-03-16 22:51 Chris Wilson
2020-03-17 1:30 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for " Patchwork
` (14 more replies)
0 siblings, 15 replies; 18+ messages in thread
From: Chris Wilson @ 2020-03-16 22:51 UTC (permalink / raw)
To: intel-gfx
As we store the handle lookup inside a radix tree, we do not need the
gem_context->mutex except until we need to insert our lookup into the
common radix tree. This takes a small bit of rearranging to ensure that
the lut we insert into the tree is ready prior to actually inserting it
(as soon as it is exposed via the radixtree, it is visible to any other
submission).
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
.../gpu/drm/i915/gem/i915_gem_execbuffer.c | 33 +++++++++++++------
1 file changed, 23 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
index d3f4f28e9468..d2f15833c417 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
@@ -481,7 +481,7 @@ eb_add_vma(struct i915_execbuffer *eb,
GEM_BUG_ON(i915_vma_is_closed(vma));
- ev->vma = i915_vma_get(vma);
+ ev->vma = vma;
ev->exec = entry;
ev->flags = entry->flags;
@@ -748,7 +748,12 @@ static int eb_lookup_vmas(struct i915_execbuffer *eb)
struct i915_lut_handle *lut;
struct i915_vma *vma;
+lookup:
+ rcu_read_lock();
vma = radix_tree_lookup(handles_vma, handle);
+ if (likely(vma))
+ vma = i915_vma_tryget(vma);
+ rcu_read_unlock();
if (likely(vma))
goto add_vma;
@@ -770,18 +775,28 @@ static int eb_lookup_vmas(struct i915_execbuffer *eb)
goto err_obj;
}
- err = radix_tree_insert(handles_vma, handle, vma);
- if (unlikely(err)) {
- i915_lut_handle_free(lut);
- goto err_obj;
- }
-
/* transfer ref to lut */
+ i915_gem_object_get(obj);
if (!atomic_fetch_inc(&vma->open_count))
i915_vma_reopen(vma);
lut->handle = handle;
lut->ctx = eb->gem_context;
+ mutex_lock(&eb->gem_context->mutex);
+ err = -ENOENT;
+ if (unlikely(!i915_gem_context_is_closed(eb->gem_context)))
+ err = radix_tree_insert(handles_vma, handle, vma);
+ mutex_unlock(&eb->gem_context->mutex);
+ if (unlikely(err)) {
+ atomic_dec(&vma->open_count);
+ i915_gem_object_put(obj);
+ i915_lut_handle_free(lut);
+ i915_gem_object_put(obj);
+ if (err == -EEXIST)
+ goto lookup;
+ goto err_vma;
+ }
+
i915_gem_object_lock(obj);
list_add(&lut->obj_link, &obj->lut_list);
i915_gem_object_unlock(obj);
@@ -789,7 +804,7 @@ static int eb_lookup_vmas(struct i915_execbuffer *eb)
add_vma:
err = eb_validate_vma(eb, &eb->exec[i], vma);
if (unlikely(err))
- goto err_vma;
+ goto err_obj;
eb_add_vma(eb, i, batch, vma);
}
@@ -1494,9 +1509,7 @@ static int eb_relocate(struct i915_execbuffer *eb)
{
int err;
- mutex_lock(&eb->gem_context->mutex);
err = eb_lookup_vmas(eb);
- mutex_unlock(&eb->gem_context->mutex);
if (err)
return err;
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
@ 2020-03-17 1:30 ` Patchwork
2020-03-17 1:38 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
` (13 subsequent siblings)
14 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2020-03-17 1:30 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
URL : https://patchwork.freedesktop.org/series/74759/
State : warning
== Summary ==
$ make htmldocs 2>&1 > /dev/null | grep i915
Error: Cannot open file ./drivers/gpu/drm/i915/i915_gem_fence_reg.c
Error: Cannot open file ./drivers/gpu/drm/i915/i915_gem_fence_reg.c
Error: Cannot open file ./drivers/gpu/drm/i915/i915_gem_fence_reg.c
Error: Cannot open file ./drivers/gpu/drm/i915/i915_gem_fence_reg.c
WARNING: kernel-doc './scripts/kernel-doc -rst -enable-lineno -internal ./drivers/gpu/drm/i915/i915_gem_fence_reg.c' failed with return code 2
WARNING: kernel-doc './scripts/kernel-doc -rst -enable-lineno -function fence register handling ./drivers/gpu/drm/i915/i915_gem_fence_reg.c' failed with return code 1
WARNING: kernel-doc './scripts/kernel-doc -rst -enable-lineno -function tiling swizzling details ./drivers/gpu/drm/i915/i915_gem_fence_reg.c' failed with return code 1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
2020-03-17 1:30 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for " Patchwork
@ 2020-03-17 1:38 ` Patchwork
2020-03-17 10:59 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
` (12 subsequent siblings)
14 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2020-03-17 1:38 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
URL : https://patchwork.freedesktop.org/series/74759/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_8139 -> Patchwork_16988
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/index.html
Known issues
------------
Here are the changes found in Patchwork_16988 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-kbl-7500u: [PASS][1] -> [FAIL][2] ([fdo#111407])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
#### Possible fixes ####
* igt@kms_flip@basic-flip-vs-dpms:
- fi-skl-6770hq: [SKIP][3] ([fdo#109271]) -> [PASS][4] +24 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/fi-skl-6770hq/igt@kms_flip@basic-flip-vs-dpms.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/fi-skl-6770hq/igt@kms_flip@basic-flip-vs-dpms.html
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#111407]: https://bugs.freedesktop.org/show_bug.cgi?id=111407
Participating hosts (43 -> 38)
------------------------------
Additional (2): fi-kbl-soraka fi-bwr-2160
Missing (7): fi-hsw-4200u fi-byt-squawks fi-glk-dsi fi-bsw-cyan fi-ilk-650 fi-blb-e6850 fi-byt-clapper
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_8139 -> Patchwork_16988
CI-20190529: 20190529
CI_DRM_8139: 1516ff1b2279ede916d81b1978da0428414705f8 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5512: f6fef7eff6f121e5e89afd7e70116f471ccd5b8b @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_16988: 4334dd7600ecdfd2d1be70a36bb6f2a4d6e46e59 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
4334dd7600ec drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
2020-03-17 1:30 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for " Patchwork
2020-03-17 1:38 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
@ 2020-03-17 10:59 ` Patchwork
2020-03-17 12:17 ` [Intel-gfx] [PATCH] " Chris Wilson
` (11 subsequent siblings)
14 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2020-03-17 10:59 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
URL : https://patchwork.freedesktop.org/series/74759/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_8139_full -> Patchwork_16988_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_16988_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_16988_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_16988_full:
### IGT changes ###
#### Possible regressions ####
* igt@gem_exec_alignment@single:
- shard-kbl: [PASS][1] -> [DMESG-WARN][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-kbl3/igt@gem_exec_alignment@single.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-kbl1/igt@gem_exec_alignment@single.html
- shard-iclb: [PASS][3] -> [DMESG-WARN][4] +1 similar issue
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb7/igt@gem_exec_alignment@single.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb5/igt@gem_exec_alignment@single.html
- shard-tglb: [PASS][5] -> [DMESG-WARN][6] +1 similar issue
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-tglb7/igt@gem_exec_alignment@single.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-tglb2/igt@gem_exec_alignment@single.html
- shard-apl: [PASS][7] -> [DMESG-WARN][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-apl3/igt@gem_exec_alignment@single.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-apl2/igt@gem_exec_alignment@single.html
* igt@gem_exec_parallel@vecs0-fds:
- shard-skl: NOTRUN -> [FAIL][9]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl5/igt@gem_exec_parallel@vecs0-fds.html
* igt@gem_softpin@invalid:
- shard-skl: [PASS][10] -> [DMESG-WARN][11] +1 similar issue
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-skl8/igt@gem_softpin@invalid.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl1/igt@gem_softpin@invalid.html
- shard-kbl: [PASS][12] -> [INCOMPLETE][13]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-kbl7/igt@gem_softpin@invalid.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-kbl4/igt@gem_softpin@invalid.html
- shard-glk: [PASS][14] -> [DMESG-WARN][15]
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-glk8/igt@gem_softpin@invalid.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-glk9/igt@gem_softpin@invalid.html
* igt@runner@aborted:
- shard-tglb: NOTRUN -> ([FAIL][16], [FAIL][17])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-tglb2/igt@runner@aborted.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-tglb1/igt@runner@aborted.html
#### Warnings ####
* igt@runner@aborted:
- shard-kbl: ([FAIL][18], [FAIL][19]) ([i915#1389] / [i915#1402] / [i915#92]) -> ([FAIL][20], [FAIL][21], [FAIL][22]) ([i915#92])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-kbl1/igt@runner@aborted.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-kbl1/igt@runner@aborted.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-kbl4/igt@runner@aborted.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-kbl1/igt@runner@aborted.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-kbl4/igt@runner@aborted.html
- shard-apl: ([FAIL][23], [FAIL][24], [FAIL][25]) ([fdo#103927] / [i915#1402] / [i915#529]) -> ([FAIL][26], [FAIL][27], [FAIL][28]) ([fdo#103927])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-apl6/igt@runner@aborted.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-apl6/igt@runner@aborted.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-apl4/igt@runner@aborted.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-apl2/igt@runner@aborted.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-apl2/igt@runner@aborted.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-apl6/igt@runner@aborted.html
Known issues
------------
Here are the changes found in Patchwork_16988_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_async@concurrent-writes-bsd:
- shard-iclb: [PASS][29] -> [SKIP][30] ([fdo#112146])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb8/igt@gem_exec_async@concurrent-writes-bsd.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb1/igt@gem_exec_async@concurrent-writes-bsd.html
* igt@gem_exec_schedule@implicit-write-read-bsd1:
- shard-iclb: [PASS][31] -> [SKIP][32] ([fdo#109276] / [i915#677])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb1/igt@gem_exec_schedule@implicit-write-read-bsd1.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb8/igt@gem_exec_schedule@implicit-write-read-bsd1.html
* igt@gem_ppgtt@flink-and-close-vma-leak:
- shard-glk: [PASS][33] -> [FAIL][34] ([i915#644])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-glk7/igt@gem_ppgtt@flink-and-close-vma-leak.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-glk8/igt@gem_ppgtt@flink-and-close-vma-leak.html
* igt@gem_softpin@invalid:
- shard-apl: [PASS][35] -> [INCOMPLETE][36] ([fdo#103927])
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-apl3/igt@gem_softpin@invalid.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-apl6/igt@gem_softpin@invalid.html
* igt@i915_suspend@debugfs-reader:
- shard-kbl: [PASS][37] -> [DMESG-WARN][38] ([i915#180])
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-kbl2/igt@i915_suspend@debugfs-reader.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-kbl2/igt@i915_suspend@debugfs-reader.html
* igt@kms_cursor_crc@pipe-a-cursor-128x128-random:
- shard-skl: [PASS][39] -> [FAIL][40] ([i915#54])
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-skl1/igt@kms_cursor_crc@pipe-a-cursor-128x128-random.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl4/igt@kms_cursor_crc@pipe-a-cursor-128x128-random.html
- shard-kbl: [PASS][41] -> [FAIL][42] ([i915#54])
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-kbl6/igt@kms_cursor_crc@pipe-a-cursor-128x128-random.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-kbl7/igt@kms_cursor_crc@pipe-a-cursor-128x128-random.html
- shard-apl: [PASS][43] -> [FAIL][44] ([i915#54])
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-apl4/igt@kms_cursor_crc@pipe-a-cursor-128x128-random.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-apl8/igt@kms_cursor_crc@pipe-a-cursor-128x128-random.html
* igt@kms_cursor_crc@pipe-c-cursor-suspend:
- shard-apl: [PASS][45] -> [DMESG-WARN][46] ([i915#180])
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-apl1/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-apl7/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-move:
- shard-glk: [PASS][47] -> [FAIL][48] ([i915#49])
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-glk2/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-move.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-glk5/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-move.html
* igt@kms_hdr@bpc-switch:
- shard-skl: [PASS][49] -> [FAIL][50] ([i915#1188])
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-skl10/igt@kms_hdr@bpc-switch.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl6/igt@kms_hdr@bpc-switch.html
* igt@kms_psr2_su@frontbuffer:
- shard-iclb: [PASS][51] -> [SKIP][52] ([fdo#109642] / [fdo#111068])
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb2/igt@kms_psr2_su@frontbuffer.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb7/igt@kms_psr2_su@frontbuffer.html
* igt@kms_psr@psr2_cursor_blt:
- shard-iclb: [PASS][53] -> [SKIP][54] ([fdo#109441])
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb2/igt@kms_psr@psr2_cursor_blt.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb7/igt@kms_psr@psr2_cursor_blt.html
* igt@kms_vblank@pipe-a-query-busy-hang:
- shard-glk: [PASS][55] -> [INCOMPLETE][56] ([i915#58] / [k.org#198133]) +1 similar issue
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-glk6/igt@kms_vblank@pipe-a-query-busy-hang.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-glk7/igt@kms_vblank@pipe-a-query-busy-hang.html
* igt@perf_pmu@busy-vcs1:
- shard-iclb: [PASS][57] -> [SKIP][58] ([fdo#112080]) +11 similar issues
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb1/igt@perf_pmu@busy-vcs1.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb8/igt@perf_pmu@busy-vcs1.html
* igt@prime_vgem@fence-wait-bsd2:
- shard-iclb: [PASS][59] -> [SKIP][60] ([fdo#109276]) +22 similar issues
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb1/igt@prime_vgem@fence-wait-bsd2.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb8/igt@prime_vgem@fence-wait-bsd2.html
#### Possible fixes ####
* igt@gem_ctx_persistence@close-replace-race:
- shard-kbl: [INCOMPLETE][61] ([i915#1402]) -> [PASS][62]
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-kbl1/igt@gem_ctx_persistence@close-replace-race.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-kbl7/igt@gem_ctx_persistence@close-replace-race.html
- shard-iclb: [INCOMPLETE][63] ([i915#1402]) -> [PASS][64]
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb8/igt@gem_ctx_persistence@close-replace-race.html
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb1/igt@gem_ctx_persistence@close-replace-race.html
- shard-apl: [INCOMPLETE][65] ([fdo#103927]) -> [PASS][66]
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-apl4/igt@gem_ctx_persistence@close-replace-race.html
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-apl3/igt@gem_ctx_persistence@close-replace-race.html
- shard-skl: [INCOMPLETE][67] ([i915#1402]) -> [PASS][68]
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-skl9/igt@gem_ctx_persistence@close-replace-race.html
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl2/igt@gem_ctx_persistence@close-replace-race.html
- shard-glk: [INCOMPLETE][69] ([i915#1402] / [i915#58] / [k.org#198133]) -> [PASS][70]
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-glk1/igt@gem_ctx_persistence@close-replace-race.html
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-glk2/igt@gem_ctx_persistence@close-replace-race.html
* igt@gem_ctx_shared@q-independent-vebox:
- shard-skl: [FAIL][71] ([i915#935]) -> [PASS][72]
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-skl8/igt@gem_ctx_shared@q-independent-vebox.html
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl1/igt@gem_ctx_shared@q-independent-vebox.html
* igt@gem_eio@in-flight-suspend:
- shard-kbl: [DMESG-WARN][73] ([i915#56]) -> [PASS][74]
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-kbl6/igt@gem_eio@in-flight-suspend.html
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-kbl3/igt@gem_eio@in-flight-suspend.html
* igt@gem_exec_balancer@smoke:
- shard-iclb: [SKIP][75] ([fdo#110854]) -> [PASS][76]
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb6/igt@gem_exec_balancer@smoke.html
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb2/igt@gem_exec_balancer@smoke.html
* igt@gem_exec_schedule@implicit-both-bsd1:
- shard-iclb: [SKIP][77] ([fdo#109276] / [i915#677]) -> [PASS][78]
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb5/igt@gem_exec_schedule@implicit-both-bsd1.html
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb2/igt@gem_exec_schedule@implicit-both-bsd1.html
* igt@gem_exec_schedule@implicit-write-read-bsd:
- shard-iclb: [SKIP][79] ([i915#677]) -> [PASS][80]
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb1/igt@gem_exec_schedule@implicit-write-read-bsd.html
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb8/igt@gem_exec_schedule@implicit-write-read-bsd.html
* igt@gem_exec_schedule@wide-bsd:
- shard-iclb: [SKIP][81] ([fdo#112146]) -> [PASS][82] +5 similar issues
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb1/igt@gem_exec_schedule@wide-bsd.html
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb8/igt@gem_exec_schedule@wide-bsd.html
* igt@gem_exec_whisper@basic-fds-priority:
- shard-skl: [FAIL][83] -> [PASS][84] +1 similar issue
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-skl6/igt@gem_exec_whisper@basic-fds-priority.html
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl3/igt@gem_exec_whisper@basic-fds-priority.html
* igt@gem_ppgtt@flink-and-close-vma-leak:
- shard-apl: [FAIL][85] ([i915#644]) -> [PASS][86]
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-apl1/igt@gem_ppgtt@flink-and-close-vma-leak.html
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-apl7/igt@gem_ppgtt@flink-and-close-vma-leak.html
* igt@i915_pm_rps@reset:
- shard-iclb: [FAIL][87] ([i915#413]) -> [PASS][88] +1 similar issue
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb6/igt@i915_pm_rps@reset.html
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb2/igt@i915_pm_rps@reset.html
* igt@i915_selftest@live@execlists:
- shard-apl: [INCOMPLETE][89] ([fdo#103927] / [i915#656]) -> [PASS][90]
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-apl6/igt@i915_selftest@live@execlists.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-apl2/igt@i915_selftest@live@execlists.html
* igt@i915_suspend@sysfs-reader:
- shard-skl: [INCOMPLETE][91] ([i915#69]) -> [PASS][92]
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-skl2/igt@i915_suspend@sysfs-reader.html
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl5/igt@i915_suspend@sysfs-reader.html
* igt@kms_cursor_crc@pipe-a-cursor-suspend:
- shard-kbl: [DMESG-WARN][93] ([i915#180]) -> [PASS][94] +2 similar issues
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-kbl3/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-kbl4/igt@kms_cursor_crc@pipe-a-cursor-suspend.html
* igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
- shard-glk: [FAIL][95] ([i915#79]) -> [PASS][96]
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-glk1/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible.html
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-glk1/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible.html
* igt@kms_frontbuffer_tracking@fbc-suspend:
- shard-apl: [DMESG-WARN][97] ([i915#180]) -> [PASS][98] +1 similar issue
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-apl1/igt@kms_frontbuffer_tracking@fbc-suspend.html
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-apl3/igt@kms_frontbuffer_tracking@fbc-suspend.html
* igt@kms_hdr@bpc-switch-dpms:
- shard-skl: [FAIL][99] ([i915#1188]) -> [PASS][100]
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-skl4/igt@kms_hdr@bpc-switch-dpms.html
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl7/igt@kms_hdr@bpc-switch-dpms.html
* igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
- shard-skl: [FAIL][101] ([fdo#108145] / [i915#265]) -> [PASS][102]
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-skl3/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl9/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
* igt@kms_plane_lowres@pipe-a-tiling-x:
- shard-glk: [FAIL][103] ([i915#899]) -> [PASS][104]
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-glk5/igt@kms_plane_lowres@pipe-a-tiling-x.html
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-glk4/igt@kms_plane_lowres@pipe-a-tiling-x.html
* igt@kms_psr@psr2_sprite_render:
- shard-iclb: [SKIP][105] ([fdo#109441]) -> [PASS][106] +2 similar issues
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb5/igt@kms_psr@psr2_sprite_render.html
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb2/igt@kms_psr@psr2_sprite_render.html
* igt@kms_setmode@basic:
- shard-apl: [FAIL][107] ([i915#31]) -> [PASS][108]
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-apl8/igt@kms_setmode@basic.html
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-apl7/igt@kms_setmode@basic.html
* igt@kms_vblank@pipe-b-query-idle-hang:
- shard-skl: [SKIP][109] ([fdo#109271]) -> [PASS][110] +1 similar issue
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-skl8/igt@kms_vblank@pipe-b-query-idle-hang.html
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl1/igt@kms_vblank@pipe-b-query-idle-hang.html
* igt@kms_vblank@pipe-c-ts-continuation-suspend:
- shard-hsw: [INCOMPLETE][111] ([i915#61]) -> [PASS][112]
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-hsw4/igt@kms_vblank@pipe-c-ts-continuation-suspend.html
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-hsw1/igt@kms_vblank@pipe-c-ts-continuation-suspend.html
* igt@perf_pmu@busy-accuracy-98-vcs1:
- shard-iclb: [SKIP][113] ([fdo#112080]) -> [PASS][114] +11 similar issues
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb8/igt@perf_pmu@busy-accuracy-98-vcs1.html
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb1/igt@perf_pmu@busy-accuracy-98-vcs1.html
* igt@prime_busy@hang-bsd2:
- shard-iclb: [SKIP][115] ([fdo#109276]) -> [PASS][116] +12 similar issues
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-iclb5/igt@prime_busy@hang-bsd2.html
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-iclb2/igt@prime_busy@hang-bsd2.html
* {igt@sysfs_heartbeat_interval@precise@rcs0}:
- shard-skl: [FAIL][117] ([i915#1459]) -> [PASS][118] +1 similar issue
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-skl6/igt@sysfs_heartbeat_interval@precise@rcs0.html
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl3/igt@sysfs_heartbeat_interval@precise@rcs0.html
#### Warnings ####
* igt@runner@aborted:
- shard-glk: [FAIL][119] ([i915#1402] / [k.org#202321]) -> ([FAIL][120], [FAIL][121]) ([k.org#202321])
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-glk1/igt@runner@aborted.html
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-glk9/igt@runner@aborted.html
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-glk3/igt@runner@aborted.html
- shard-skl: [FAIL][122] ([i915#1402] / [i915#69]) -> ([FAIL][123], [FAIL][124]) ([i915#69])
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8139/shard-skl9/igt@runner@aborted.html
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl1/igt@runner@aborted.html
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/shard-skl6/igt@runner@aborted.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
[fdo#110854]: https://bugs.freedesktop.org/show_bug.cgi?id=110854
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080
[fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146
[i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
[i915#1389]: https://gitlab.freedesktop.org/drm/intel/issues/1389
[i915#1402]: https://gitlab.freedesktop.org/drm/intel/issues/1402
[i915#1459]: https://gitlab.freedesktop.org/drm/intel/issues/1459
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31
[i915#413]: https://gitlab.freedesktop.org/drm/intel/issues/413
[i915#49]: https://gitlab.freedesktop.org/drm/intel/issues/49
[i915#529]: https://gitlab.freedesktop.org/drm/intel/issues/529
[i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54
[i915#56]: https://gitlab.freedesktop.org/drm/intel/issues/56
[i915#58]: https://gitlab.freedesktop.org/drm/intel/issues/58
[i915#61]: https://gitlab.freedesktop.org/drm/intel/issues/61
[i915#644]: https://gitlab.freedesktop.org/drm/intel/issues/644
[i915#656]: https://gitlab.freedesktop.org/drm/intel/issues/656
[i915#677]: https://gitlab.freedesktop.org/drm/intel/issues/677
[i915#69]: https://gitlab.freedesktop.org/drm/intel/issues/69
[i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
[i915#899]: https://gitlab.freedesktop.org/drm/intel/issues/899
[i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92
[i915#935]: https://gitlab.freedesktop.org/drm/intel/issues/935
[k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133
[k.org#202321]: https://bugzilla.kernel.org/show_bug.cgi?id=202321
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_8139 -> Patchwork_16988
CI-20190529: 20190529
CI_DRM_8139: 1516ff1b2279ede916d81b1978da0428414705f8 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5512: f6fef7eff6f121e5e89afd7e70116f471ccd5b8b @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_16988: 4334dd7600ecdfd2d1be70a36bb6f2a4d6e46e59 @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16988/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
` (2 preceding siblings ...)
2020-03-17 10:59 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
@ 2020-03-17 12:17 ` Chris Wilson
2020-03-17 12:58 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev2) Patchwork
` (10 subsequent siblings)
14 siblings, 0 replies; 18+ messages in thread
From: Chris Wilson @ 2020-03-17 12:17 UTC (permalink / raw)
To: intel-gfx
As we store the handle lookup inside a radix tree, we do not need the
gem_context->mutex except until we need to insert our lookup into the
common radix tree. This takes a small bit of rearranging to ensure that
the lut we insert into the tree is ready prior to actually inserting it
(as soon as it is exposed via the radixtree, it is visible to any other
submission).
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
.../gpu/drm/i915/gem/i915_gem_execbuffer.c | 43 ++++++++++++-------
1 file changed, 27 insertions(+), 16 deletions(-)
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
index d3f4f28e9468..75529d8e0f08 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
@@ -481,7 +481,7 @@ eb_add_vma(struct i915_execbuffer *eb,
GEM_BUG_ON(i915_vma_is_closed(vma));
- ev->vma = i915_vma_get(vma);
+ ev->vma = vma;
ev->exec = entry;
ev->flags = entry->flags;
@@ -731,24 +731,25 @@ static int eb_select_context(struct i915_execbuffer *eb)
static int eb_lookup_vmas(struct i915_execbuffer *eb)
{
struct radix_tree_root *handles_vma = &eb->gem_context->handles_vma;
+ unsigned int batch = eb_batch_index(eb);
struct drm_i915_gem_object *obj;
- unsigned int i, batch;
+ unsigned int i;
int err;
- if (unlikely(i915_gem_context_is_closed(eb->gem_context)))
- return -ENOENT;
-
INIT_LIST_HEAD(&eb->relocs);
INIT_LIST_HEAD(&eb->unbound);
- batch = eb_batch_index(eb);
-
for (i = 0; i < eb->buffer_count; i++) {
u32 handle = eb->exec[i].handle;
struct i915_lut_handle *lut;
struct i915_vma *vma;
+lookup:
+ rcu_read_lock();
vma = radix_tree_lookup(handles_vma, handle);
+ if (likely(vma))
+ vma = i915_vma_tryget(vma);
+ rcu_read_unlock();
if (likely(vma))
goto add_vma;
@@ -770,26 +771,38 @@ static int eb_lookup_vmas(struct i915_execbuffer *eb)
goto err_obj;
}
- err = radix_tree_insert(handles_vma, handle, vma);
- if (unlikely(err)) {
- i915_lut_handle_free(lut);
- goto err_obj;
- }
-
/* transfer ref to lut */
+ i915_gem_object_get(obj);
if (!atomic_fetch_inc(&vma->open_count))
i915_vma_reopen(vma);
lut->handle = handle;
lut->ctx = eb->gem_context;
+ mutex_lock(&eb->gem_context->mutex);
+ err = -ENOENT;
+ if (unlikely(!i915_gem_context_is_closed(eb->gem_context)))
+ err = radix_tree_insert(handles_vma, handle, vma);
+ mutex_unlock(&eb->gem_context->mutex);
+ if (unlikely(err)) {
+ atomic_dec(&vma->open_count);
+ i915_gem_object_put(obj);
+ i915_lut_handle_free(lut);
+ i915_gem_object_put(obj);
+ if (err == -EEXIST)
+ goto lookup;
+ goto err_vma;
+ }
+
i915_gem_object_lock(obj);
list_add(&lut->obj_link, &obj->lut_list);
i915_gem_object_unlock(obj);
add_vma:
err = eb_validate_vma(eb, &eb->exec[i], vma);
- if (unlikely(err))
+ if (unlikely(err)) {
+ i915_vma_put(vma);
goto err_vma;
+ }
eb_add_vma(eb, i, batch, vma);
}
@@ -1494,9 +1507,7 @@ static int eb_relocate(struct i915_execbuffer *eb)
{
int err;
- mutex_lock(&eb->gem_context->mutex);
err = eb_lookup_vmas(eb);
- mutex_unlock(&eb->gem_context->mutex);
if (err)
return err;
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev2)
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
` (3 preceding siblings ...)
2020-03-17 12:17 ` [Intel-gfx] [PATCH] " Chris Wilson
@ 2020-03-17 12:58 ` Patchwork
2020-03-17 13:10 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
` (9 subsequent siblings)
14 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2020-03-17 12:58 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev2)
URL : https://patchwork.freedesktop.org/series/74759/
State : warning
== Summary ==
$ make htmldocs 2>&1 > /dev/null | grep i915
Error: Cannot open file ./drivers/gpu/drm/i915/i915_gem_fence_reg.c
Error: Cannot open file ./drivers/gpu/drm/i915/i915_gem_fence_reg.c
Error: Cannot open file ./drivers/gpu/drm/i915/i915_gem_fence_reg.c
Error: Cannot open file ./drivers/gpu/drm/i915/i915_gem_fence_reg.c
WARNING: kernel-doc './scripts/kernel-doc -rst -enable-lineno -internal ./drivers/gpu/drm/i915/i915_gem_fence_reg.c' failed with return code 2
WARNING: kernel-doc './scripts/kernel-doc -rst -enable-lineno -function fence register handling ./drivers/gpu/drm/i915/i915_gem_fence_reg.c' failed with return code 1
WARNING: kernel-doc './scripts/kernel-doc -rst -enable-lineno -function tiling swizzling details ./drivers/gpu/drm/i915/i915_gem_fence_reg.c' failed with return code 1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev2)
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
` (4 preceding siblings ...)
2020-03-17 12:58 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev2) Patchwork
@ 2020-03-17 13:10 ` Patchwork
2020-03-17 13:55 ` [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Dan Carpenter
` (8 subsequent siblings)
14 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2020-03-17 13:10 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev2)
URL : https://patchwork.freedesktop.org/series/74759/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_8141 -> Patchwork_16991
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_16991:
### IGT changes ###
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* igt@i915_selftest@live@execlists:
- {fi-ehl-1}: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/fi-ehl-1/igt@i915_selftest@live@execlists.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/fi-ehl-1/igt@i915_selftest@live@execlists.html
* igt@runner@aborted:
- {fi-ehl-1}: NOTRUN -> [FAIL][3]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/fi-ehl-1/igt@runner@aborted.html
Known issues
------------
Here are the changes found in Patchwork_16991 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@fbdev@mmap:
- fi-kbl-7500u: [PASS][4] -> [SKIP][5] ([fdo#109271])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/fi-kbl-7500u/igt@fbdev@mmap.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/fi-kbl-7500u/igt@fbdev@mmap.html
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-kbl-7500u: [PASS][6] -> [FAIL][7] ([fdo#111407])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
#### Possible fixes ####
* igt@i915_pm_rpm@module-reload:
- fi-icl-dsi: [INCOMPLETE][8] ([i915#189]) -> [PASS][9]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/fi-icl-dsi/igt@i915_pm_rpm@module-reload.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/fi-icl-dsi/igt@i915_pm_rpm@module-reload.html
* igt@i915_selftest@live@execlists:
- fi-cfl-8700k: [INCOMPLETE][10] ([i915#656]) -> [PASS][11]
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/fi-cfl-8700k/igt@i915_selftest@live@execlists.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/fi-cfl-8700k/igt@i915_selftest@live@execlists.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#111407]: https://bugs.freedesktop.org/show_bug.cgi?id=111407
[i915#189]: https://gitlab.freedesktop.org/drm/intel/issues/189
[i915#656]: https://gitlab.freedesktop.org/drm/intel/issues/656
Participating hosts (47 -> 36)
------------------------------
Additional (1): fi-kbl-7560u
Missing (12): fi-bdw-5557u fi-hsw-4200u fi-hsw-peppy fi-byt-squawks fi-bsw-cyan fi-bwr-2160 fi-cfl-guc fi-gdg-551 fi-skl-lmem fi-byt-clapper fi-bsw-nick fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_8141 -> Patchwork_16991
CI-20190529: 20190529
CI_DRM_8141: f7be958f2574d30bad18983c3afe2c5401674dfb @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5513: 417c926459dacf062f2945d3ba01a3f94551b16f @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_16991: 3ac212a31ac487c6cb1b1e72ca02963e9e008551 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
3ac212a31ac4 drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
` (5 preceding siblings ...)
2020-03-17 13:10 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
@ 2020-03-17 13:55 ` Dan Carpenter
2020-03-17 14:09 ` [Intel-gfx] [PATCH v2] " Chris Wilson
` (7 subsequent siblings)
14 siblings, 0 replies; 18+ messages in thread
From: Dan Carpenter @ 2020-03-17 13:55 UTC (permalink / raw)
To: kbuild, Chris Wilson; +Cc: intel-gfx, kbuild-all
Hi Chris,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on drm-intel/for-linux-next]
[also build test WARNING on drm-tip/drm-tip next-20200316]
[cannot apply to v5.6-rc6]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Chris-Wilson/drm-i915-gem-Avoid-gem_context-mutex-for-simple-vma-lookup/20200317-110430
base: git://anongit.freedesktop.org/drm-intel for-linux-next
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
New smatch warnings:
drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c:815 eb_lookup_vmas() error: uninitialized symbol 'obj'.
Old smatch warnings:
drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c:1111 reloc_move_to_gpu() warn: maybe use && instead of &
drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c:1599 eb_move_to_gpu() warn: maybe use && instead of &
drivers/gpu/drm/i915/gem/i915_gem_context.h:201 i915_gem_context_get_engine() warn: inconsistent indenting
drivers/gpu/drm/i915/gem/i915_gem_context.h:203 i915_gem_context_get_engine() warn: inconsistent indenting
# https://github.com/0day-ci/linux/commit/88e913b4b889b5b70ae708967ff75a04527b50af
git remote add linux-review https://github.com/0day-ci/linux
git remote update linux-review
git checkout 88e913b4b889b5b70ae708967ff75a04527b50af
vim +/obj +815 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
2889caa9232109 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-06-16 731 static int eb_lookup_vmas(struct i915_execbuffer *eb)
3b96eff447b4ca drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2013-01-08 732 {
8f2a1057d6ec21 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2019-04-25 733 struct radix_tree_root *handles_vma = &eb->gem_context->handles_vma;
ac70ebe873f516 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-09-12 734 struct drm_i915_gem_object *obj;
^^^^
Uninitialized
746c8f143afad7 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2018-06-10 735 unsigned int i, batch;
2889caa9232109 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-06-16 736 int err;
3b96eff447b4ca drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2013-01-08 737
003d8b9143a69f drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-03 738 if (unlikely(i915_gem_context_is_closed(eb->gem_context)))
003d8b9143a69f drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-03 739 return -ENOENT;
003d8b9143a69f drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-03 740
2889caa9232109 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-06-16 741 INIT_LIST_HEAD(&eb->relocs);
2889caa9232109 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-06-16 742 INIT_LIST_HEAD(&eb->unbound);
d55495b4dcce2e drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-06-15 743
746c8f143afad7 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2018-06-10 744 batch = eb_batch_index(eb);
746c8f143afad7 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2018-06-10 745
170fa29b14fadf drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 746 for (i = 0; i < eb->buffer_count; i++) {
170fa29b14fadf drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 747 u32 handle = eb->exec[i].handle;
d1b48c1e7184d9 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 748 struct i915_lut_handle *lut;
170fa29b14fadf drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 749 struct i915_vma *vma;
4ff4b44cbb70c2 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-06-16 750
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 751 lookup:
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 752 rcu_read_lock();
d1b48c1e7184d9 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 753 vma = radix_tree_lookup(handles_vma, handle);
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 754 if (likely(vma))
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 755 vma = i915_vma_tryget(vma);
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 756 rcu_read_unlock();
d1b48c1e7184d9 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 757 if (likely(vma))
170fa29b14fadf drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 758 goto add_vma;
^^^^^^^^^^^^
Assume we hit this goto
3b96eff447b4ca drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2013-01-08 759
170fa29b14fadf drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 760 obj = i915_gem_object_lookup(eb->file, handle);
170fa29b14fadf drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 761 if (unlikely(!obj)) {
170fa29b14fadf drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 762 err = -ENOENT;
170fa29b14fadf drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 763 goto err_vma;
27173f1f95db5e drivers/gpu/drm/i915/i915_gem_execbuffer.c Ben Widawsky 2013-08-14 764 }
6f65e29acad749 drivers/gpu/drm/i915/i915_gem_execbuffer.c Ben Widawsky 2013-12-06 765
f5d974f9d2a811 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2019-07-30 766 vma = i915_vma_instance(obj, eb->context->vm, NULL);
772b5408e3aac9 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chengguang Xu 2019-02-21 767 if (IS_ERR(vma)) {
2889caa9232109 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-06-16 768 err = PTR_ERR(vma);
170fa29b14fadf drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 769 goto err_obj;
27173f1f95db5e drivers/gpu/drm/i915/i915_gem_execbuffer.c Ben Widawsky 2013-08-14 770 }
27173f1f95db5e drivers/gpu/drm/i915/i915_gem_execbuffer.c Ben Widawsky 2013-08-14 771
13f1bfd3b3329b drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2019-02-28 772 lut = i915_lut_handle_alloc();
d1b48c1e7184d9 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 773 if (unlikely(!lut)) {
d1b48c1e7184d9 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 774 err = -ENOMEM;
d1b48c1e7184d9 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 775 goto err_obj;
d1b48c1e7184d9 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 776 }
d1b48c1e7184d9 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 777
155ab8836caa69 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2019-06-06 778 /* transfer ref to lut */
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 779 i915_gem_object_get(obj);
155ab8836caa69 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2019-06-06 780 if (!atomic_fetch_inc(&vma->open_count))
3365e2268b6bc3 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2018-05-03 781 i915_vma_reopen(vma);
d1b48c1e7184d9 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 782 lut->handle = handle;
155ab8836caa69 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2019-06-06 783 lut->ctx = eb->gem_context;
155ab8836caa69 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2019-06-06 784
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 785 mutex_lock(&eb->gem_context->mutex);
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 786 err = -ENOENT;
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 787 if (unlikely(!i915_gem_context_is_closed(eb->gem_context)))
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 788 err = radix_tree_insert(handles_vma, handle, vma);
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 789 mutex_unlock(&eb->gem_context->mutex);
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 790 if (unlikely(err)) {
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 791 atomic_dec(&vma->open_count);
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 792 i915_gem_object_put(obj);
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 793 i915_lut_handle_free(lut);
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 794 i915_gem_object_put(obj);
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 795 if (err == -EEXIST)
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 796 goto lookup;
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 797 goto err_vma;
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 798 }
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 799
155ab8836caa69 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2019-06-06 800 i915_gem_object_lock(obj);
155ab8836caa69 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2019-06-06 801 list_add(&lut->obj_link, &obj->lut_list);
155ab8836caa69 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2019-06-06 802 i915_gem_object_unlock(obj);
d1b48c1e7184d9 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 803
170fa29b14fadf drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 804 add_vma:
003d8b9143a69f drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-03 805 err = eb_validate_vma(eb, &eb->exec[i], vma);
2889caa9232109 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-06-16 806 if (unlikely(err))
88e913b4b889b5 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-16 807 goto err_obj;
And this goto
dade2a6165fd7b drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-06-16 808
003d8b9143a69f drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-03 809 eb_add_vma(eb, i, batch, vma);
3b96eff447b4ca drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2013-01-08 810 }
3b96eff447b4ca drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2013-01-08 811
003d8b9143a69f drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-03 812 return 0;
2889caa9232109 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-06-16 813
170fa29b14fadf drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 814 err_obj:
170fa29b14fadf drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 @815 i915_gem_object_put(obj);
^^^
170fa29b14fadf drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-08-16 816 err_vma:
7d6236bb13352c drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c Chris Wilson 2020-03-03 817 eb->vma[i].vma = NULL;
2889caa9232109 drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2017-06-16 818 return err;
3b96eff447b4ca drivers/gpu/drm/i915/i915_gem_execbuffer.c Chris Wilson 2013-01-08 819 }
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] [PATCH v2] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
` (6 preceding siblings ...)
2020-03-17 13:55 ` [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Dan Carpenter
@ 2020-03-17 14:09 ` Chris Wilson
2020-03-17 19:11 ` [Intel-gfx] [PATCH v3] " Chris Wilson
2020-03-17 15:49 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev3) Patchwork
` (6 subsequent siblings)
14 siblings, 1 reply; 18+ messages in thread
From: Chris Wilson @ 2020-03-17 14:09 UTC (permalink / raw)
To: intel-gfx
As we store the handle lookup inside a radix tree, we do not need the
gem_context->mutex except until we need to insert our lookup into the
common radix tree. This takes a small bit of rearranging to ensure that
the lut we insert into the tree is ready prior to actually inserting it
(as soon as it is exposed via the radixtree, it is visible to any other
submission).
v2: For brownie points, remove the goto spaghetti.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
.../gpu/drm/i915/gem/i915_gem_execbuffer.c | 129 +++++++++++-------
1 file changed, 80 insertions(+), 49 deletions(-)
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
index d3f4f28e9468..e9279ef27259 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
@@ -481,7 +481,7 @@ eb_add_vma(struct i915_execbuffer *eb,
GEM_BUG_ON(i915_vma_is_closed(vma));
- ev->vma = i915_vma_get(vma);
+ ev->vma = vma;
ev->exec = entry;
ev->flags = entry->flags;
@@ -728,77 +728,110 @@ static int eb_select_context(struct i915_execbuffer *eb)
return 0;
}
-static int eb_lookup_vmas(struct i915_execbuffer *eb)
+static int __eb_add_lut(struct i915_gem_context *ctx,
+ u32 handle, struct i915_vma *vma)
{
- struct radix_tree_root *handles_vma = &eb->gem_context->handles_vma;
- struct drm_i915_gem_object *obj;
- unsigned int i, batch;
+ struct drm_i915_gem_object *obj = vma->obj;
+ struct i915_lut_handle *lut;
int err;
- if (unlikely(i915_gem_context_is_closed(eb->gem_context)))
- return -ENOENT;
+ lut = i915_lut_handle_alloc();
+ if (unlikely(!lut))
+ return -ENOMEM;
- INIT_LIST_HEAD(&eb->relocs);
- INIT_LIST_HEAD(&eb->unbound);
+ i915_vma_get(vma);
+ if (!atomic_fetch_inc(&vma->open_count))
+ i915_vma_reopen(vma);
+ lut->handle = handle;
+ lut->ctx = ctx;
+
+ err = -EINTR;
+ if (!mutex_lock_interruptible(&ctx->mutex)) {
+ err = -ENOENT;
+ if (likely(!i915_gem_context_is_closed(ctx)))
+ err = radix_tree_insert(&ctx->handles_vma, handle, vma);
+ mutex_unlock(&ctx->mutex);
+ }
+ if (unlikely(err))
+ goto err;
- batch = eb_batch_index(eb);
+ i915_gem_object_lock(obj);
+ list_add(&lut->obj_link, &obj->lut_list);
+ i915_gem_object_unlock(obj);
- for (i = 0; i < eb->buffer_count; i++) {
- u32 handle = eb->exec[i].handle;
- struct i915_lut_handle *lut;
+ return 0;
+
+err:
+ atomic_dec(&vma->open_count);
+ i915_vma_put(vma);
+ i915_lut_handle_free(lut);
+ return err;
+}
+
+static struct i915_vma *eb_lookup_vma(struct i915_execbuffer *eb, u32 handle)
+{
+ struct i915_gem_context *ctx = eb->gem_context;
+
+ do {
+ struct drm_i915_gem_object *obj;
struct i915_vma *vma;
+ int err;
- vma = radix_tree_lookup(handles_vma, handle);
+ rcu_read_lock();
+ vma = radix_tree_lookup(&ctx->handles_vma, handle);
if (likely(vma))
- goto add_vma;
+ vma = i915_vma_tryget(vma);
+ rcu_read_unlock();
+ if (likely(vma))
+ return vma;
obj = i915_gem_object_lookup(eb->file, handle);
- if (unlikely(!obj)) {
- err = -ENOENT;
- goto err_vma;
- }
+ if (unlikely(!obj))
+ return ERR_PTR(-ENOENT);
vma = i915_vma_instance(obj, eb->context->vm, NULL);
if (IS_ERR(vma)) {
- err = PTR_ERR(vma);
- goto err_obj;
+ i915_gem_object_put(obj);
+ return vma;
}
- lut = i915_lut_handle_alloc();
- if (unlikely(!lut)) {
- err = -ENOMEM;
- goto err_obj;
- }
+ err = __eb_add_lut(ctx, handle, vma);
+ if (likely(!err))
+ return vma;
- err = radix_tree_insert(handles_vma, handle, vma);
- if (unlikely(err)) {
- i915_lut_handle_free(lut);
- goto err_obj;
- }
+ i915_gem_object_put(obj);
+ if (err != -EEXIST)
+ return ERR_PTR(err);
+ } while (1);
+}
- /* transfer ref to lut */
- if (!atomic_fetch_inc(&vma->open_count))
- i915_vma_reopen(vma);
- lut->handle = handle;
- lut->ctx = eb->gem_context;
+static int eb_lookup_vmas(struct i915_execbuffer *eb)
+{
+ unsigned int batch = eb_batch_index(eb);
+ unsigned int i;
+ int err = 0;
- i915_gem_object_lock(obj);
- list_add(&lut->obj_link, &obj->lut_list);
- i915_gem_object_unlock(obj);
+ INIT_LIST_HEAD(&eb->relocs);
+ INIT_LIST_HEAD(&eb->unbound);
+
+ for (i = 0; i < eb->buffer_count; i++) {
+ struct i915_vma *vma;
+
+ vma = eb_lookup_vma(eb, eb->exec[i].handle);
+ if (IS_ERR(vma)) {
+ err = PTR_ERR(vma);
+ break;
+ }
-add_vma:
err = eb_validate_vma(eb, &eb->exec[i], vma);
- if (unlikely(err))
- goto err_vma;
+ if (unlikely(err)) {
+ i915_vma_put(vma);
+ break;
+ }
eb_add_vma(eb, i, batch, vma);
}
- return 0;
-
-err_obj:
- i915_gem_object_put(obj);
-err_vma:
eb->vma[i].vma = NULL;
return err;
}
@@ -1494,9 +1527,7 @@ static int eb_relocate(struct i915_execbuffer *eb)
{
int err;
- mutex_lock(&eb->gem_context->mutex);
err = eb_lookup_vmas(eb);
- mutex_unlock(&eb->gem_context->mutex);
if (err)
return err;
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev3)
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
` (7 preceding siblings ...)
2020-03-17 14:09 ` [Intel-gfx] [PATCH v2] " Chris Wilson
@ 2020-03-17 15:49 ` Patchwork
2020-03-17 16:00 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
` (5 subsequent siblings)
14 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2020-03-17 15:49 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev3)
URL : https://patchwork.freedesktop.org/series/74759/
State : warning
== Summary ==
$ make htmldocs 2>&1 > /dev/null | grep i915
Error: Cannot open file ./drivers/gpu/drm/i915/i915_gem_fence_reg.c
Error: Cannot open file ./drivers/gpu/drm/i915/i915_gem_fence_reg.c
Error: Cannot open file ./drivers/gpu/drm/i915/i915_gem_fence_reg.c
Error: Cannot open file ./drivers/gpu/drm/i915/i915_gem_fence_reg.c
WARNING: kernel-doc './scripts/kernel-doc -rst -enable-lineno -internal ./drivers/gpu/drm/i915/i915_gem_fence_reg.c' failed with return code 2
WARNING: kernel-doc './scripts/kernel-doc -rst -enable-lineno -function fence register handling ./drivers/gpu/drm/i915/i915_gem_fence_reg.c' failed with return code 1
WARNING: kernel-doc './scripts/kernel-doc -rst -enable-lineno -function tiling swizzling details ./drivers/gpu/drm/i915/i915_gem_fence_reg.c' failed with return code 1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev3)
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
` (8 preceding siblings ...)
2020-03-17 15:49 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev3) Patchwork
@ 2020-03-17 16:00 ` Patchwork
2020-03-17 18:05 ` [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev2) Patchwork
` (4 subsequent siblings)
14 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2020-03-17 16:00 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev3)
URL : https://patchwork.freedesktop.org/series/74759/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_8142 -> Patchwork_16996
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/index.html
Known issues
------------
Here are the changes found in Patchwork_16996 that come from known issues:
### IGT changes ###
#### Possible fixes ####
* igt@i915_selftest@live@execlists:
- fi-skl-lmem: [INCOMPLETE][1] ([i915#1430] / [i915#656]) -> [PASS][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/fi-skl-lmem/igt@i915_selftest@live@execlists.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/fi-skl-lmem/igt@i915_selftest@live@execlists.html
- fi-kbl-soraka: [INCOMPLETE][3] ([fdo#112259] / [i915#1430] / [i915#656]) -> [PASS][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/fi-kbl-soraka/igt@i915_selftest@live@execlists.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/fi-kbl-soraka/igt@i915_selftest@live@execlists.html
[fdo#112259]: https://bugs.freedesktop.org/show_bug.cgi?id=112259
[i915#1430]: https://gitlab.freedesktop.org/drm/intel/issues/1430
[i915#656]: https://gitlab.freedesktop.org/drm/intel/issues/656
Participating hosts (43 -> 41)
------------------------------
Additional (5): fi-bdw-5557u fi-glk-dsi fi-cfl-8109u fi-blb-e6850 fi-skl-6700k2
Missing (7): fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-bdw-samus fi-byt-clapper fi-bsw-nick fi-skl-6600u
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_8142 -> Patchwork_16996
CI-20190529: 20190529
CI_DRM_8142: 13dfeddee92ca6b9d134e036ae315e93b96023db @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5514: 921758a91a453e8148b3146ad874bbd4ae4364ec @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_16996: 14c937a62591a82e1bc1d11ebc58194af9959877 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
14c937a62591 drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev2)
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
` (9 preceding siblings ...)
2020-03-17 16:00 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
@ 2020-03-17 18:05 ` Patchwork
2020-03-17 19:53 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev4) Patchwork
` (3 subsequent siblings)
14 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2020-03-17 18:05 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev2)
URL : https://patchwork.freedesktop.org/series/74759/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_8141_full -> Patchwork_16991_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
New tests
---------
New tests have been introduced between CI_DRM_8141_full and Patchwork_16991_full:
### New IGT tests (2) ###
* igt@sysfs_heartbeat_interval@precise:
- Statuses :
- Exec time: [None] s
* igt@sysfs_preempt_timeout@idempotent:
- Statuses :
- Exec time: [None] s
Known issues
------------
Here are the changes found in Patchwork_16991_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_ctx_isolation@rcs0-s3:
- shard-apl: [PASS][1] -> [DMESG-WARN][2] ([i915#180]) +4 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-apl3/igt@gem_ctx_isolation@rcs0-s3.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-apl4/igt@gem_ctx_isolation@rcs0-s3.html
* igt@gem_ctx_persistence@legacy-engines-mixed-process@bsd:
- shard-glk: [PASS][3] -> [INCOMPLETE][4] ([i915#1197] / [i915#1239] / [i915#58] / [k.org#198133])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-glk6/igt@gem_ctx_persistence@legacy-engines-mixed-process@bsd.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-glk9/igt@gem_ctx_persistence@legacy-engines-mixed-process@bsd.html
* igt@gem_ctx_persistence@legacy-engines-mixed-process@render:
- shard-glk: [PASS][5] -> [FAIL][6] ([i915#679])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-glk6/igt@gem_ctx_persistence@legacy-engines-mixed-process@render.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-glk9/igt@gem_ctx_persistence@legacy-engines-mixed-process@render.html
* igt@gem_exec_schedule@implicit-both-bsd1:
- shard-iclb: [PASS][7] -> [SKIP][8] ([fdo#109276] / [i915#677]) +2 similar issues
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb1/igt@gem_exec_schedule@implicit-both-bsd1.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb8/igt@gem_exec_schedule@implicit-both-bsd1.html
* igt@gem_exec_schedule@out-order-bsd2:
- shard-iclb: [PASS][9] -> [SKIP][10] ([fdo#109276]) +11 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb2/igt@gem_exec_schedule@out-order-bsd2.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb3/igt@gem_exec_schedule@out-order-bsd2.html
* igt@gem_exec_schedule@pi-shared-iova-bsd:
- shard-iclb: [PASS][11] -> [SKIP][12] ([i915#677]) +1 similar issue
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb7/igt@gem_exec_schedule@pi-shared-iova-bsd.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb1/igt@gem_exec_schedule@pi-shared-iova-bsd.html
* igt@gem_exec_schedule@preempt-other-chain-bsd:
- shard-iclb: [PASS][13] -> [SKIP][14] ([fdo#112146]) +5 similar issues
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb7/igt@gem_exec_schedule@preempt-other-chain-bsd.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb2/igt@gem_exec_schedule@preempt-other-chain-bsd.html
* igt@gem_workarounds@suspend-resume-fd:
- shard-kbl: [PASS][15] -> [DMESG-WARN][16] ([i915#180]) +6 similar issues
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-kbl3/igt@gem_workarounds@suspend-resume-fd.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-kbl7/igt@gem_workarounds@suspend-resume-fd.html
* igt@i915_pm_rps@reset:
- shard-iclb: [PASS][17] -> [FAIL][18] ([i915#413])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb5/igt@i915_pm_rps@reset.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb5/igt@i915_pm_rps@reset.html
* igt@i915_suspend@forcewake:
- shard-skl: [PASS][19] -> [INCOMPLETE][20] ([i915#69])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-skl6/igt@i915_suspend@forcewake.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-skl6/igt@i915_suspend@forcewake.html
* igt@kms_dp_dsc@basic-dsc-enable-edp:
- shard-iclb: [PASS][21] -> [SKIP][22] ([fdo#109349])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb1/igt@kms_dp_dsc@basic-dsc-enable-edp.html
* igt@kms_flip@flip-vs-expired-vblank:
- shard-skl: [PASS][23] -> [FAIL][24] ([i915#46])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-skl10/igt@kms_flip@flip-vs-expired-vblank.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-skl3/igt@kms_flip@flip-vs-expired-vblank.html
* igt@kms_hdr@bpc-switch-dpms:
- shard-skl: [PASS][25] -> [FAIL][26] ([i915#1188])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-skl2/igt@kms_hdr@bpc-switch-dpms.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-skl6/igt@kms_hdr@bpc-switch-dpms.html
* igt@kms_plane_alpha_blend@pipe-b-coverage-7efc:
- shard-skl: [PASS][27] -> [FAIL][28] ([fdo#108145] / [i915#265])
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-skl6/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-skl6/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html
* igt@kms_plane_multiple@atomic-pipe-c-tiling-yf:
- shard-skl: [PASS][29] -> [DMESG-WARN][30] ([IGT#6])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-skl5/igt@kms_plane_multiple@atomic-pipe-c-tiling-yf.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-skl1/igt@kms_plane_multiple@atomic-pipe-c-tiling-yf.html
* igt@kms_psr2_su@frontbuffer:
- shard-iclb: [PASS][31] -> [SKIP][32] ([fdo#109642] / [fdo#111068])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb2/igt@kms_psr2_su@frontbuffer.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb3/igt@kms_psr2_su@frontbuffer.html
* igt@kms_psr@no_drrs:
- shard-iclb: [PASS][33] -> [FAIL][34] ([i915#173])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb2/igt@kms_psr@no_drrs.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb1/igt@kms_psr@no_drrs.html
* igt@kms_psr@psr2_dpms:
- shard-iclb: [PASS][35] -> [SKIP][36] ([fdo#109441]) +1 similar issue
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb2/igt@kms_psr@psr2_dpms.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb1/igt@kms_psr@psr2_dpms.html
* igt@perf_pmu@busy-no-semaphores-vcs1:
- shard-iclb: [PASS][37] -> [SKIP][38] ([fdo#112080]) +13 similar issues
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb4/igt@perf_pmu@busy-no-semaphores-vcs1.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb8/igt@perf_pmu@busy-no-semaphores-vcs1.html
#### Possible fixes ####
* igt@gem_busy@busy-vcs1:
- shard-iclb: [SKIP][39] ([fdo#112080]) -> [PASS][40] +4 similar issues
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb6/igt@gem_busy@busy-vcs1.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb2/igt@gem_busy@busy-vcs1.html
* igt@gem_ctx_isolation@rcs0-s3:
- shard-skl: [INCOMPLETE][41] ([i915#69]) -> [PASS][42]
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-skl5/igt@gem_ctx_isolation@rcs0-s3.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-skl2/igt@gem_ctx_isolation@rcs0-s3.html
* igt@gem_ctx_persistence@close-replace-race:
- shard-tglb: [INCOMPLETE][43] ([i915#1402]) -> [PASS][44]
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-tglb3/igt@gem_ctx_persistence@close-replace-race.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-tglb3/igt@gem_ctx_persistence@close-replace-race.html
- shard-apl: [INCOMPLETE][45] ([fdo#103927] / [i915#1402]) -> [PASS][46]
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-apl6/igt@gem_ctx_persistence@close-replace-race.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-apl3/igt@gem_ctx_persistence@close-replace-race.html
- shard-glk: [INCOMPLETE][47] ([i915#1402] / [i915#58] / [k.org#198133]) -> [PASS][48]
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-glk1/igt@gem_ctx_persistence@close-replace-race.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-glk2/igt@gem_ctx_persistence@close-replace-race.html
* igt@gem_ctx_persistence@engines-mixed-process@vcs1:
- shard-tglb: [FAIL][49] ([i915#679]) -> [PASS][50]
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-tglb1/igt@gem_ctx_persistence@engines-mixed-process@vcs1.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-tglb8/igt@gem_ctx_persistence@engines-mixed-process@vcs1.html
* igt@gem_ctx_persistence@engines-mixed-process@vecs0:
- shard-tglb: [INCOMPLETE][51] ([i915#1239]) -> [PASS][52]
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-tglb1/igt@gem_ctx_persistence@engines-mixed-process@vecs0.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-tglb8/igt@gem_ctx_persistence@engines-mixed-process@vecs0.html
* igt@gem_exec_async@concurrent-writes-bsd:
- shard-iclb: [SKIP][53] ([fdo#112146]) -> [PASS][54] +3 similar issues
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb4/igt@gem_exec_async@concurrent-writes-bsd.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb6/igt@gem_exec_async@concurrent-writes-bsd.html
* igt@gem_exec_schedule@fifo-bsd1:
- shard-iclb: [SKIP][55] ([fdo#109276]) -> [PASS][56] +10 similar issues
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb7/igt@gem_exec_schedule@fifo-bsd1.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb2/igt@gem_exec_schedule@fifo-bsd1.html
* igt@gem_exec_schedule@pi-common-bsd:
- shard-iclb: [SKIP][57] ([i915#677]) -> [PASS][58]
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb1/igt@gem_exec_schedule@pi-common-bsd.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb8/igt@gem_exec_schedule@pi-common-bsd.html
* igt@gem_exec_whisper@basic-queues-forked:
- shard-skl: [FAIL][59] -> [PASS][60] +1 similar issue
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-skl2/igt@gem_exec_whisper@basic-queues-forked.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-skl6/igt@gem_exec_whisper@basic-queues-forked.html
* igt@gem_ppgtt@flink-and-close-vma-leak:
- shard-glk: [FAIL][61] ([i915#644]) -> [PASS][62]
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-glk9/igt@gem_ppgtt@flink-and-close-vma-leak.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-glk1/igt@gem_ppgtt@flink-and-close-vma-leak.html
- shard-kbl: [FAIL][63] ([i915#644]) -> [PASS][64]
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-kbl1/igt@gem_ppgtt@flink-and-close-vma-leak.html
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-kbl3/igt@gem_ppgtt@flink-and-close-vma-leak.html
* igt@gem_softpin@noreloc-s3:
- shard-apl: [DMESG-WARN][65] ([i915#180]) -> [PASS][66] +1 similar issue
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-apl1/igt@gem_softpin@noreloc-s3.html
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-apl1/igt@gem_softpin@noreloc-s3.html
* igt@i915_pm_dc@dc6-dpms:
- shard-iclb: [FAIL][67] ([i915#454]) -> [PASS][68]
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb3/igt@i915_pm_dc@dc6-dpms.html
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb7/igt@i915_pm_dc@dc6-dpms.html
* igt@i915_pm_rps@waitboost:
- shard-tglb: [FAIL][69] ([i915#413]) -> [PASS][70]
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-tglb1/igt@i915_pm_rps@waitboost.html
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-tglb8/igt@i915_pm_rps@waitboost.html
* igt@i915_suspend@forcewake:
- shard-kbl: [DMESG-WARN][71] ([i915#180]) -> [PASS][72] +1 similar issue
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-kbl3/igt@i915_suspend@forcewake.html
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-kbl3/igt@i915_suspend@forcewake.html
* igt@kms_cursor_crc@pipe-b-cursor-256x85-random:
- shard-skl: [FAIL][73] ([i915#54]) -> [PASS][74]
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-skl10/igt@kms_cursor_crc@pipe-b-cursor-256x85-random.html
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-skl7/igt@kms_cursor_crc@pipe-b-cursor-256x85-random.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible:
- shard-glk: [FAIL][75] ([i915#79]) -> [PASS][76]
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-glk5/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-glk6/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
* igt@kms_flip@plain-flip-ts-check:
- shard-skl: [FAIL][77] ([i915#34]) -> [PASS][78]
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-skl2/igt@kms_flip@plain-flip-ts-check.html
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-skl8/igt@kms_flip@plain-flip-ts-check.html
* igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min:
- shard-skl: [FAIL][79] ([fdo#108145]) -> [PASS][80]
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-skl10/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-skl7/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
* igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
- shard-skl: [FAIL][81] ([fdo#108145] / [i915#265]) -> [PASS][82]
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-skl1/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-skl9/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
* igt@kms_psr@psr2_cursor_plane_move:
- shard-iclb: [SKIP][83] ([fdo#109441]) -> [PASS][84] +1 similar issue
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb6/igt@kms_psr@psr2_cursor_plane_move.html
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb2/igt@kms_psr@psr2_cursor_plane_move.html
* igt@perf@short-reads:
- shard-kbl: [FAIL][85] ([i915#51]) -> [PASS][86]
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-kbl6/igt@perf@short-reads.html
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-kbl4/igt@perf@short-reads.html
#### Warnings ####
* igt@i915_pm_dc@dc3co-vpb-simulation:
- shard-iclb: [SKIP][87] ([i915#658]) -> [SKIP][88] ([i915#588])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-iclb7/igt@i915_pm_dc@dc3co-vpb-simulation.html
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-iclb2/igt@i915_pm_dc@dc3co-vpb-simulation.html
* igt@i915_pm_dc@dc6-psr:
- shard-tglb: [SKIP][89] ([i915#468]) -> [FAIL][90] ([i915#454])
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-tglb2/igt@i915_pm_dc@dc6-psr.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-tglb6/igt@i915_pm_dc@dc6-psr.html
* igt@runner@aborted:
- shard-apl: ([FAIL][91], [FAIL][92]) ([fdo#103927] / [i915#1402]) -> [FAIL][93] ([fdo#103927])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-apl2/igt@runner@aborted.html
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8141/shard-apl6/igt@runner@aborted.html
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/shard-apl2/igt@runner@aborted.html
[IGT#6]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/6
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080
[fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146
[i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
[i915#1197]: https://gitlab.freedesktop.org/drm/intel/issues/1197
[i915#1239]: https://gitlab.freedesktop.org/drm/intel/issues/1239
[i915#1402]: https://gitlab.freedesktop.org/drm/intel/issues/1402
[i915#173]: https://gitlab.freedesktop.org/drm/intel/issues/173
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#34]: https://gitlab.freedesktop.org/drm/intel/issues/34
[i915#413]: https://gitlab.freedesktop.org/drm/intel/issues/413
[i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454
[i915#46]: https://gitlab.freedesktop.org/drm/intel/issues/46
[i915#468]: https://gitlab.freedesktop.org/drm/intel/issues/468
[i915#51]: https://gitlab.freedesktop.org/drm/intel/issues/51
[i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54
[i915#58]: https://gitlab.freedesktop.org/drm/intel/issues/58
[i915#588]: https://gitlab.freedesktop.org/drm/intel/issues/588
[i915#644]: https://gitlab.freedesktop.org/drm/intel/issues/644
[i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
[i915#677]: https://gitlab.freedesktop.org/drm/intel/issues/677
[i915#679]: https://gitlab.freedesktop.org/drm/intel/issues/679
[i915#69]: https://gitlab.freedesktop.org/drm/intel/issues/69
[i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
[k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_8141 -> Patchwork_16991
CI-20190529: 20190529
CI_DRM_8141: f7be958f2574d30bad18983c3afe2c5401674dfb @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5513: 417c926459dacf062f2945d3ba01a3f94551b16f @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_16991: 3ac212a31ac487c6cb1b1e72ca02963e9e008551 @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16991/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] [PATCH v3] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
2020-03-17 14:09 ` [Intel-gfx] [PATCH v2] " Chris Wilson
@ 2020-03-17 19:11 ` Chris Wilson
2020-03-17 20:25 ` [Intel-gfx] [PATCH] " Chris Wilson
0 siblings, 1 reply; 18+ messages in thread
From: Chris Wilson @ 2020-03-17 19:11 UTC (permalink / raw)
To: intel-gfx
As we store the handle lookup inside a radix tree, we do not need the
gem_context->mutex except until we need to insert our lookup into the
common radix tree. This takes a small bit of rearranging to ensure that
the lut we insert into the tree is ready prior to actually inserting it
(as soon as it is exposed via the radixtree, it is visible to any other
submission).
v2: For brownie points, remove the goto spaghetti.
v3: Tighten up the closed-handle checks.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
.../gpu/drm/i915/gem/i915_gem_execbuffer.c | 136 +++++++++++-------
1 file changed, 87 insertions(+), 49 deletions(-)
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
index d3f4f28e9468..9a781a2b144c 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
@@ -481,7 +481,7 @@ eb_add_vma(struct i915_execbuffer *eb,
GEM_BUG_ON(i915_vma_is_closed(vma));
- ev->vma = i915_vma_get(vma);
+ ev->vma = vma;
ev->exec = entry;
ev->flags = entry->flags;
@@ -728,77 +728,117 @@ static int eb_select_context(struct i915_execbuffer *eb)
return 0;
}
-static int eb_lookup_vmas(struct i915_execbuffer *eb)
+static int __eb_add_lut(struct i915_execbuffer *eb,
+ u32 handle, struct i915_vma *vma)
{
- struct radix_tree_root *handles_vma = &eb->gem_context->handles_vma;
- struct drm_i915_gem_object *obj;
- unsigned int i, batch;
+ struct i915_gem_context *ctx = eb->gem_context;
+ struct i915_lut_handle *lut;
int err;
- if (unlikely(i915_gem_context_is_closed(eb->gem_context)))
- return -ENOENT;
+ lut = i915_lut_handle_alloc();
+ if (unlikely(!lut))
+ return -ENOMEM;
- INIT_LIST_HEAD(&eb->relocs);
- INIT_LIST_HEAD(&eb->unbound);
+ i915_vma_get(vma);
+ if (!atomic_fetch_inc(&vma->open_count))
+ i915_vma_reopen(vma);
+ lut->handle = handle;
+ lut->ctx = ctx;
+
+ /* Check that the context hasn't been closed in the meantime */
+ err = -EINTR;
+ if (!mutex_lock_interruptible(&ctx->mutex)) {
+ err = -ENOENT;
+ if (likely(!i915_gem_context_is_closed(ctx)))
+ err = radix_tree_insert(&ctx->handles_vma, handle, vma);
+ if (err == 0) { /* And nor has this handle */
+ struct drm_i915_gem_object *obj = vma->obj;
+
+ i915_gem_object_lock(obj);
+ if (i915_gem_object_lookup_rcu(eb->file, handle) == obj) {
+ list_add(&lut->obj_link, &obj->lut_list);
+ } else {
+ radix_tree_delete(&ctx->handles_vma, handle);
+ err = -ENOENT;
+ }
+ i915_gem_object_unlock(obj);
+ }
+ mutex_unlock(&ctx->mutex);
+ }
+ if (unlikely(err))
+ goto err;
- batch = eb_batch_index(eb);
+ return 0;
- for (i = 0; i < eb->buffer_count; i++) {
- u32 handle = eb->exec[i].handle;
- struct i915_lut_handle *lut;
+err:
+ atomic_dec(&vma->open_count);
+ i915_vma_put(vma);
+ i915_lut_handle_free(lut);
+ return err;
+}
+
+static struct i915_vma *eb_lookup_vma(struct i915_execbuffer *eb, u32 handle)
+{
+ do {
+ struct drm_i915_gem_object *obj;
struct i915_vma *vma;
+ int err;
- vma = radix_tree_lookup(handles_vma, handle);
+ rcu_read_lock();
+ vma = radix_tree_lookup(&eb->gem_context->handles_vma, handle);
+ if (likely(vma))
+ vma = i915_vma_tryget(vma);
+ rcu_read_unlock();
if (likely(vma))
- goto add_vma;
+ return vma;
obj = i915_gem_object_lookup(eb->file, handle);
- if (unlikely(!obj)) {
- err = -ENOENT;
- goto err_vma;
- }
+ if (unlikely(!obj))
+ return ERR_PTR(-ENOENT);
vma = i915_vma_instance(obj, eb->context->vm, NULL);
if (IS_ERR(vma)) {
- err = PTR_ERR(vma);
- goto err_obj;
+ i915_gem_object_put(obj);
+ return vma;
}
- lut = i915_lut_handle_alloc();
- if (unlikely(!lut)) {
- err = -ENOMEM;
- goto err_obj;
- }
+ err = __eb_add_lut(eb, handle, vma);
+ if (likely(!err))
+ return vma;
- err = radix_tree_insert(handles_vma, handle, vma);
- if (unlikely(err)) {
- i915_lut_handle_free(lut);
- goto err_obj;
- }
+ i915_gem_object_put(obj);
+ if (err != -EEXIST)
+ return ERR_PTR(err);
+ } while (1);
+}
- /* transfer ref to lut */
- if (!atomic_fetch_inc(&vma->open_count))
- i915_vma_reopen(vma);
- lut->handle = handle;
- lut->ctx = eb->gem_context;
+static int eb_lookup_vmas(struct i915_execbuffer *eb)
+{
+ unsigned int batch = eb_batch_index(eb);
+ unsigned int i;
+ int err = 0;
- i915_gem_object_lock(obj);
- list_add(&lut->obj_link, &obj->lut_list);
- i915_gem_object_unlock(obj);
+ INIT_LIST_HEAD(&eb->relocs);
+ INIT_LIST_HEAD(&eb->unbound);
+
+ for (i = 0; i < eb->buffer_count; i++) {
+ struct i915_vma *vma;
+
+ vma = eb_lookup_vma(eb, eb->exec[i].handle);
+ if (IS_ERR(vma)) {
+ err = PTR_ERR(vma);
+ break;
+ }
-add_vma:
err = eb_validate_vma(eb, &eb->exec[i], vma);
- if (unlikely(err))
- goto err_vma;
+ if (unlikely(err)) {
+ i915_vma_put(vma);
+ break;
+ }
eb_add_vma(eb, i, batch, vma);
}
- return 0;
-
-err_obj:
- i915_gem_object_put(obj);
-err_vma:
eb->vma[i].vma = NULL;
return err;
}
@@ -1494,9 +1534,7 @@ static int eb_relocate(struct i915_execbuffer *eb)
{
int err;
- mutex_lock(&eb->gem_context->mutex);
err = eb_lookup_vmas(eb);
- mutex_unlock(&eb->gem_context->mutex);
if (err)
return err;
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev4)
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
` (10 preceding siblings ...)
2020-03-17 18:05 ` [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev2) Patchwork
@ 2020-03-17 19:53 ` Patchwork
2020-03-17 21:31 ` [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev5) Patchwork
` (2 subsequent siblings)
14 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2020-03-17 19:53 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev4)
URL : https://patchwork.freedesktop.org/series/74759/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_8144 -> Patchwork_16999
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_16999 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_16999, 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_16999/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_16999:
### IGT changes ###
#### Possible regressions ####
* igt@gem_busy@busy-all:
- fi-bdw-5557u: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-bdw-5557u/igt@gem_busy@busy-all.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-bdw-5557u/igt@gem_busy@busy-all.html
- fi-kbl-8809g: [PASS][3] -> [INCOMPLETE][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-kbl-8809g/igt@gem_busy@busy-all.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-kbl-8809g/igt@gem_busy@busy-all.html
- fi-icl-guc: [PASS][5] -> [INCOMPLETE][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-icl-guc/igt@gem_busy@busy-all.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-icl-guc/igt@gem_busy@busy-all.html
- fi-kbl-r: [PASS][7] -> [INCOMPLETE][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-kbl-r/igt@gem_busy@busy-all.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-kbl-r/igt@gem_busy@busy-all.html
- fi-bsw-kefka: [PASS][9] -> [INCOMPLETE][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-bsw-kefka/igt@gem_busy@busy-all.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-bsw-kefka/igt@gem_busy@busy-all.html
- fi-icl-dsi: [PASS][11] -> [DMESG-WARN][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-icl-dsi/igt@gem_busy@busy-all.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-icl-dsi/igt@gem_busy@busy-all.html
- fi-kbl-guc: [PASS][13] -> [INCOMPLETE][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-kbl-guc/igt@gem_busy@busy-all.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-kbl-guc/igt@gem_busy@busy-all.html
- fi-kbl-7500u: [PASS][15] -> [INCOMPLETE][16]
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-kbl-7500u/igt@gem_busy@busy-all.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-kbl-7500u/igt@gem_busy@busy-all.html
- fi-kbl-x1275: [PASS][17] -> [INCOMPLETE][18]
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-kbl-x1275/igt@gem_busy@busy-all.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-kbl-x1275/igt@gem_busy@busy-all.html
- fi-pnv-d510: [PASS][19] -> [DMESG-WARN][20]
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-pnv-d510/igt@gem_busy@busy-all.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-pnv-d510/igt@gem_busy@busy-all.html
- fi-icl-u2: [PASS][21] -> [DMESG-WARN][22]
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-icl-u2/igt@gem_busy@busy-all.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-icl-u2/igt@gem_busy@busy-all.html
- fi-skl-6600u: [PASS][23] -> [DMESG-WARN][24]
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-skl-6600u/igt@gem_busy@busy-all.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-skl-6600u/igt@gem_busy@busy-all.html
- fi-cfl-8700k: [PASS][25] -> [INCOMPLETE][26]
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-cfl-8700k/igt@gem_busy@busy-all.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-cfl-8700k/igt@gem_busy@busy-all.html
- fi-icl-y: [PASS][27] -> [DMESG-WARN][28]
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-icl-y/igt@gem_busy@busy-all.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-icl-y/igt@gem_busy@busy-all.html
- fi-snb-2520m: [PASS][29] -> [DMESG-WARN][30]
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-snb-2520m/igt@gem_busy@busy-all.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-snb-2520m/igt@gem_busy@busy-all.html
- fi-ivb-3770: [PASS][31] -> [DMESG-WARN][32]
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-ivb-3770/igt@gem_busy@busy-all.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-ivb-3770/igt@gem_busy@busy-all.html
- fi-glk-dsi: [PASS][33] -> [DMESG-WARN][34]
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-glk-dsi/igt@gem_busy@busy-all.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-glk-dsi/igt@gem_busy@busy-all.html
- fi-blb-e6850: [PASS][35] -> [DMESG-WARN][36]
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-blb-e6850/igt@gem_busy@busy-all.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-blb-e6850/igt@gem_busy@busy-all.html
- fi-elk-e7500: [PASS][37] -> [DMESG-WARN][38]
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-elk-e7500/igt@gem_busy@busy-all.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-elk-e7500/igt@gem_busy@busy-all.html
- fi-skl-6700k2: [PASS][39] -> [DMESG-WARN][40]
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-skl-6700k2/igt@gem_busy@busy-all.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-skl-6700k2/igt@gem_busy@busy-all.html
- fi-skl-guc: [PASS][41] -> [INCOMPLETE][42]
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-skl-guc/igt@gem_busy@busy-all.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-skl-guc/igt@gem_busy@busy-all.html
- fi-cfl-guc: [PASS][43] -> [DMESG-WARN][44]
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-cfl-guc/igt@gem_busy@busy-all.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-cfl-guc/igt@gem_busy@busy-all.html
- fi-hsw-4770: [PASS][45] -> [INCOMPLETE][46]
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-hsw-4770/igt@gem_busy@busy-all.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-hsw-4770/igt@gem_busy@busy-all.html
- fi-bsw-n3050: [PASS][47] -> [INCOMPLETE][48]
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-bsw-n3050/igt@gem_busy@busy-all.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-bsw-n3050/igt@gem_busy@busy-all.html
- fi-ilk-650: [PASS][49] -> [DMESG-WARN][50]
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-ilk-650/igt@gem_busy@busy-all.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-ilk-650/igt@gem_busy@busy-all.html
- fi-cml-u2: [PASS][51] -> [DMESG-WARN][52]
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-cml-u2/igt@gem_busy@busy-all.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-cml-u2/igt@gem_busy@busy-all.html
- fi-cfl-8109u: [PASS][53] -> [INCOMPLETE][54]
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-cfl-8109u/igt@gem_busy@busy-all.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-cfl-8109u/igt@gem_busy@busy-all.html
- fi-kbl-soraka: NOTRUN -> [INCOMPLETE][55]
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-kbl-soraka/igt@gem_busy@busy-all.html
* igt@gem_close_race@basic-process:
- fi-bwr-2160: [PASS][56] -> [INCOMPLETE][57]
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-bwr-2160/igt@gem_close_race@basic-process.html
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-bwr-2160/igt@gem_close_race@basic-process.html
* igt@runner@aborted:
- fi-pnv-d510: NOTRUN -> [FAIL][58]
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-pnv-d510/igt@runner@aborted.html
- fi-kbl-x1275: NOTRUN -> [FAIL][59]
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-kbl-x1275/igt@runner@aborted.html
- fi-cfl-8700k: NOTRUN -> [FAIL][60]
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-cfl-8700k/igt@runner@aborted.html
- fi-cfl-8109u: NOTRUN -> [FAIL][61]
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-cfl-8109u/igt@runner@aborted.html
- fi-gdg-551: NOTRUN -> [FAIL][62]
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-gdg-551/igt@runner@aborted.html
- fi-snb-2520m: NOTRUN -> [FAIL][63]
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-snb-2520m/igt@runner@aborted.html
- fi-apl-guc: NOTRUN -> [FAIL][64]
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-apl-guc/igt@runner@aborted.html
- fi-kbl-r: NOTRUN -> [FAIL][65]
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-kbl-r/igt@runner@aborted.html
- fi-kbl-soraka: NOTRUN -> [FAIL][66]
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-kbl-soraka/igt@runner@aborted.html
- fi-hsw-4770: NOTRUN -> [FAIL][67]
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-hsw-4770/igt@runner@aborted.html
- fi-kbl-7500u: NOTRUN -> [FAIL][68]
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-kbl-7500u/igt@runner@aborted.html
- fi-kbl-guc: NOTRUN -> [FAIL][69]
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-kbl-guc/igt@runner@aborted.html
- fi-ivb-3770: NOTRUN -> [FAIL][70]
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-ivb-3770/igt@runner@aborted.html
- fi-cfl-guc: NOTRUN -> [FAIL][71]
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-cfl-guc/igt@runner@aborted.html
- fi-blb-e6850: NOTRUN -> [FAIL][72]
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-blb-e6850/igt@runner@aborted.html
#### Warnings ####
* igt@runner@aborted:
- fi-kbl-8809g: [FAIL][73] ([i915#1209]) -> [FAIL][74]
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-kbl-8809g/igt@runner@aborted.html
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-kbl-8809g/igt@runner@aborted.html
- fi-bxt-dsi: [FAIL][75] ([i915#529]) -> [FAIL][76]
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-bxt-dsi/igt@runner@aborted.html
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-bxt-dsi/igt@runner@aborted.html
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* igt@gem_busy@busy-all:
- {fi-ehl-1}: [PASS][77] -> [INCOMPLETE][78]
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-ehl-1/igt@gem_busy@busy-all.html
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-ehl-1/igt@gem_busy@busy-all.html
- {fi-tgl-dsi}: [PASS][79] -> [INCOMPLETE][80]
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-tgl-dsi/igt@gem_busy@busy-all.html
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-tgl-dsi/igt@gem_busy@busy-all.html
- {fi-tgl-u}: [PASS][81] -> [INCOMPLETE][82]
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-tgl-u/igt@gem_busy@busy-all.html
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-tgl-u/igt@gem_busy@busy-all.html
* igt@runner@aborted:
- {fi-tgl-dsi}: NOTRUN -> [FAIL][83]
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-tgl-dsi/igt@runner@aborted.html
- {fi-ehl-1}: NOTRUN -> [FAIL][84]
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-ehl-1/igt@runner@aborted.html
- {fi-tgl-u}: NOTRUN -> [FAIL][85]
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-tgl-u/igt@runner@aborted.html
Known issues
------------
Here are the changes found in Patchwork_16999 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_busy@busy-all:
- fi-apl-guc: [PASS][86] -> [INCOMPLETE][87] ([fdo#103927])
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-apl-guc/igt@gem_busy@busy-all.html
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-apl-guc/igt@gem_busy@busy-all.html
- fi-cml-s: [PASS][88] -> [INCOMPLETE][89] ([i915#283])
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-cml-s/igt@gem_busy@busy-all.html
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-cml-s/igt@gem_busy@busy-all.html
- fi-bxt-dsi: [PASS][90] -> [INCOMPLETE][91] ([fdo#103927])
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-bxt-dsi/igt@gem_busy@busy-all.html
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-bxt-dsi/igt@gem_busy@busy-all.html
* igt@gem_close_race@basic-process:
- fi-gdg-551: [PASS][92] -> [INCOMPLETE][93] ([i915#172])
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-gdg-551/igt@gem_close_race@basic-process.html
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/fi-gdg-551/igt@gem_close_race@basic-process.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[i915#1209]: https://gitlab.freedesktop.org/drm/intel/issues/1209
[i915#172]: https://gitlab.freedesktop.org/drm/intel/issues/172
[i915#283]: https://gitlab.freedesktop.org/drm/intel/issues/283
[i915#529]: https://gitlab.freedesktop.org/drm/intel/issues/529
Participating hosts (45 -> 37)
------------------------------
Additional (1): fi-kbl-soraka
Missing (9): fi-hsw-4200u fi-byt-j1900 fi-hsw-peppy fi-byt-squawks fi-bsw-cyan fi-skl-lmem fi-byt-clapper fi-bsw-nick fi-snb-2600
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_8144 -> Patchwork_16999
CI-20190529: 20190529
CI_DRM_8144: e22a73e6b26efdc18bd44d26c93e16c2783ab3f4 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5517: b77e3a470bdf1bc5f047ebb98ed8ca4738dd44c7 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_16999: 263db7401de7b14a0571c8c31deeccf7a9ceb55d @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
263db7401de7 drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16999/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
2020-03-17 19:11 ` [Intel-gfx] [PATCH v3] " Chris Wilson
@ 2020-03-17 20:25 ` Chris Wilson
0 siblings, 0 replies; 18+ messages in thread
From: Chris Wilson @ 2020-03-17 20:25 UTC (permalink / raw)
To: intel-gfx
As we store the handle lookup inside a radix tree, we do not need the
gem_context->mutex except until we need to insert our lookup into the
common radix tree. This takes a small bit of rearranging to ensure that
the lut we insert into the tree is ready prior to actually inserting it
(as soon as it is exposed via the radixtree, it is visible to any other
submission).
v2: For brownie points, remove the goto spaghetti.
v3: Tighten up the closed-handle checks.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
.../gpu/drm/i915/gem/i915_gem_execbuffer.c | 136 +++++++++++-------
1 file changed, 87 insertions(+), 49 deletions(-)
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
index d3f4f28e9468..042a9ccf348f 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
@@ -481,7 +481,7 @@ eb_add_vma(struct i915_execbuffer *eb,
GEM_BUG_ON(i915_vma_is_closed(vma));
- ev->vma = i915_vma_get(vma);
+ ev->vma = vma;
ev->exec = entry;
ev->flags = entry->flags;
@@ -728,77 +728,117 @@ static int eb_select_context(struct i915_execbuffer *eb)
return 0;
}
-static int eb_lookup_vmas(struct i915_execbuffer *eb)
+static int __eb_add_lut(struct i915_execbuffer *eb,
+ u32 handle, struct i915_vma *vma)
{
- struct radix_tree_root *handles_vma = &eb->gem_context->handles_vma;
- struct drm_i915_gem_object *obj;
- unsigned int i, batch;
+ struct i915_gem_context *ctx = eb->gem_context;
+ struct i915_lut_handle *lut;
int err;
- if (unlikely(i915_gem_context_is_closed(eb->gem_context)))
- return -ENOENT;
+ lut = i915_lut_handle_alloc();
+ if (unlikely(!lut))
+ return -ENOMEM;
- INIT_LIST_HEAD(&eb->relocs);
- INIT_LIST_HEAD(&eb->unbound);
+ i915_vma_get(vma);
+ if (!atomic_fetch_inc(&vma->open_count))
+ i915_vma_reopen(vma);
+ lut->handle = handle;
+ lut->ctx = ctx;
+
+ /* Check that the context hasn't been closed in the meantime */
+ err = -EINTR;
+ if (!mutex_lock_interruptible(&ctx->mutex)) {
+ err = -ENOENT;
+ if (likely(!i915_gem_context_is_closed(ctx)))
+ err = radix_tree_insert(&ctx->handles_vma, handle, vma);
+ if (err == 0) { /* And nor has this handle */
+ struct drm_i915_gem_object *obj = vma->obj;
+
+ i915_gem_object_lock(obj);
+ if (idr_find(&eb->file->object_idr, handle) == obj) {
+ list_add(&lut->obj_link, &obj->lut_list);
+ } else {
+ radix_tree_delete(&ctx->handles_vma, handle);
+ err = -ENOENT;
+ }
+ i915_gem_object_unlock(obj);
+ }
+ mutex_unlock(&ctx->mutex);
+ }
+ if (unlikely(err))
+ goto err;
- batch = eb_batch_index(eb);
+ return 0;
- for (i = 0; i < eb->buffer_count; i++) {
- u32 handle = eb->exec[i].handle;
- struct i915_lut_handle *lut;
+err:
+ atomic_dec(&vma->open_count);
+ i915_vma_put(vma);
+ i915_lut_handle_free(lut);
+ return err;
+}
+
+static struct i915_vma *eb_lookup_vma(struct i915_execbuffer *eb, u32 handle)
+{
+ do {
+ struct drm_i915_gem_object *obj;
struct i915_vma *vma;
+ int err;
- vma = radix_tree_lookup(handles_vma, handle);
+ rcu_read_lock();
+ vma = radix_tree_lookup(&eb->gem_context->handles_vma, handle);
+ if (likely(vma))
+ vma = i915_vma_tryget(vma);
+ rcu_read_unlock();
if (likely(vma))
- goto add_vma;
+ return vma;
obj = i915_gem_object_lookup(eb->file, handle);
- if (unlikely(!obj)) {
- err = -ENOENT;
- goto err_vma;
- }
+ if (unlikely(!obj))
+ return ERR_PTR(-ENOENT);
vma = i915_vma_instance(obj, eb->context->vm, NULL);
if (IS_ERR(vma)) {
- err = PTR_ERR(vma);
- goto err_obj;
+ i915_gem_object_put(obj);
+ return vma;
}
- lut = i915_lut_handle_alloc();
- if (unlikely(!lut)) {
- err = -ENOMEM;
- goto err_obj;
- }
+ err = __eb_add_lut(eb, handle, vma);
+ if (likely(!err))
+ return vma;
- err = radix_tree_insert(handles_vma, handle, vma);
- if (unlikely(err)) {
- i915_lut_handle_free(lut);
- goto err_obj;
- }
+ i915_gem_object_put(obj);
+ if (err != -EEXIST)
+ return ERR_PTR(err);
+ } while (1);
+}
- /* transfer ref to lut */
- if (!atomic_fetch_inc(&vma->open_count))
- i915_vma_reopen(vma);
- lut->handle = handle;
- lut->ctx = eb->gem_context;
+static int eb_lookup_vmas(struct i915_execbuffer *eb)
+{
+ unsigned int batch = eb_batch_index(eb);
+ unsigned int i;
+ int err = 0;
- i915_gem_object_lock(obj);
- list_add(&lut->obj_link, &obj->lut_list);
- i915_gem_object_unlock(obj);
+ INIT_LIST_HEAD(&eb->relocs);
+ INIT_LIST_HEAD(&eb->unbound);
+
+ for (i = 0; i < eb->buffer_count; i++) {
+ struct i915_vma *vma;
+
+ vma = eb_lookup_vma(eb, eb->exec[i].handle);
+ if (IS_ERR(vma)) {
+ err = PTR_ERR(vma);
+ break;
+ }
-add_vma:
err = eb_validate_vma(eb, &eb->exec[i], vma);
- if (unlikely(err))
- goto err_vma;
+ if (unlikely(err)) {
+ i915_vma_put(vma);
+ break;
+ }
eb_add_vma(eb, i, batch, vma);
}
- return 0;
-
-err_obj:
- i915_gem_object_put(obj);
-err_vma:
eb->vma[i].vma = NULL;
return err;
}
@@ -1494,9 +1534,7 @@ static int eb_relocate(struct i915_execbuffer *eb)
{
int err;
- mutex_lock(&eb->gem_context->mutex);
err = eb_lookup_vmas(eb);
- mutex_unlock(&eb->gem_context->mutex);
if (err)
return err;
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev5)
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
` (11 preceding siblings ...)
2020-03-17 19:53 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev4) Patchwork
@ 2020-03-17 21:31 ` Patchwork
2020-03-17 22:09 ` [Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev3) Patchwork
2020-03-18 4:33 ` [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev5) Patchwork
14 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2020-03-17 21:31 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev5)
URL : https://patchwork.freedesktop.org/series/74759/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_8144 -> Patchwork_17001
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/index.html
Known issues
------------
Here are the changes found in Patchwork_17001 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_selftest@live@execlists:
- fi-apl-guc: [PASS][1] -> [INCOMPLETE][2] ([fdo#103927] / [i915#1430] / [i915#656])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-apl-guc/igt@i915_selftest@live@execlists.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/fi-apl-guc/igt@i915_selftest@live@execlists.html
* igt@i915_selftest@live@gem_contexts:
- fi-cml-s: [PASS][3] -> [DMESG-FAIL][4] ([i915#877])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-cml-s/igt@i915_selftest@live@gem_contexts.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/fi-cml-s/igt@i915_selftest@live@gem_contexts.html
#### Possible fixes ####
* igt@i915_selftest@live@execlists:
- fi-cml-u2: [INCOMPLETE][5] ([i915#283] / [i915#656]) -> [PASS][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-cml-u2/igt@i915_selftest@live@execlists.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/fi-cml-u2/igt@i915_selftest@live@execlists.html
* igt@i915_selftest@live@gem_contexts:
- fi-cfl-8700k: [INCOMPLETE][7] ([i915#424]) -> [PASS][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-cfl-8700k/igt@i915_selftest@live@gem_contexts.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/fi-cfl-8700k/igt@i915_selftest@live@gem_contexts.html
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-kbl-7500u: [FAIL][9] ([fdo#111407]) -> [PASS][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#111407]: https://bugs.freedesktop.org/show_bug.cgi?id=111407
[i915#1430]: https://gitlab.freedesktop.org/drm/intel/issues/1430
[i915#283]: https://gitlab.freedesktop.org/drm/intel/issues/283
[i915#424]: https://gitlab.freedesktop.org/drm/intel/issues/424
[i915#656]: https://gitlab.freedesktop.org/drm/intel/issues/656
[i915#877]: https://gitlab.freedesktop.org/drm/intel/issues/877
Participating hosts (45 -> 38)
------------------------------
Additional (2): fi-kbl-soraka fi-kbl-7560u
Missing (9): fi-bdw-5557u fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-cfl-8109u fi-skl-lmem fi-byt-clapper fi-skl-6600u fi-snb-2600
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_8144 -> Patchwork_17001
CI-20190529: 20190529
CI_DRM_8144: e22a73e6b26efdc18bd44d26c93e16c2783ab3f4 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5517: b77e3a470bdf1bc5f047ebb98ed8ca4738dd44c7 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_17001: dad111ed0f4138aa9cea4cc980d1881b500726cf @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
dad111ed0f41 drm/i915/gem: Avoid gem_context->mutex for simple vma lookup
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev3)
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
` (12 preceding siblings ...)
2020-03-17 21:31 ` [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev5) Patchwork
@ 2020-03-17 22:09 ` Patchwork
2020-03-18 4:33 ` [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev5) Patchwork
14 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2020-03-17 22:09 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev3)
URL : https://patchwork.freedesktop.org/series/74759/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_8142_full -> Patchwork_16996_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_16996_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_16996_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_16996_full:
### IGT changes ###
#### Possible regressions ####
* igt@gem_set_tiling_vs_blt@untiled-to-tiled:
- shard-iclb: NOTRUN -> [FAIL][1]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb1/igt@gem_set_tiling_vs_blt@untiled-to-tiled.html
New tests
---------
New tests have been introduced between CI_DRM_8142_full and Patchwork_16996_full:
### New IGT tests (1) ###
* igt@sysfs_preempt_timeout@idempotent:
- Statuses :
- Exec time: [None] s
Known issues
------------
Here are the changes found in Patchwork_16996_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_ctx_shared@exec-single-timeline-bsd:
- shard-iclb: [PASS][2] -> [SKIP][3] ([fdo#110841])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb7/igt@gem_ctx_shared@exec-single-timeline-bsd.html
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb1/igt@gem_ctx_shared@exec-single-timeline-bsd.html
* igt@gem_exec_balancer@smoke:
- shard-iclb: [PASS][4] -> [SKIP][5] ([fdo#110854])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb2/igt@gem_exec_balancer@smoke.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb5/igt@gem_exec_balancer@smoke.html
* igt@gem_exec_parallel@vcs1-fds:
- shard-iclb: [PASS][6] -> [SKIP][7] ([fdo#112080]) +13 similar issues
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb2/igt@gem_exec_parallel@vcs1-fds.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb5/igt@gem_exec_parallel@vcs1-fds.html
* igt@gem_exec_schedule@implicit-both-bsd:
- shard-iclb: [PASS][8] -> [SKIP][9] ([i915#677]) +1 similar issue
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb5/igt@gem_exec_schedule@implicit-both-bsd.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb4/igt@gem_exec_schedule@implicit-both-bsd.html
* igt@gem_exec_schedule@implicit-both-bsd2:
- shard-iclb: [PASS][10] -> [SKIP][11] ([fdo#109276] / [i915#677]) +1 similar issue
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb4/igt@gem_exec_schedule@implicit-both-bsd2.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb8/igt@gem_exec_schedule@implicit-both-bsd2.html
* igt@gem_exec_schedule@promotion-bsd1:
- shard-iclb: [PASS][12] -> [SKIP][13] ([fdo#109276]) +23 similar issues
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb4/igt@gem_exec_schedule@promotion-bsd1.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb6/igt@gem_exec_schedule@promotion-bsd1.html
* igt@gem_exec_schedule@wide-bsd:
- shard-iclb: [PASS][14] -> [SKIP][15] ([fdo#112146]) +8 similar issues
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb7/igt@gem_exec_schedule@wide-bsd.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb1/igt@gem_exec_schedule@wide-bsd.html
* igt@gem_ppgtt@flink-and-close-vma-leak:
- shard-glk: [PASS][16] -> [FAIL][17] ([i915#644])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-glk3/igt@gem_ppgtt@flink-and-close-vma-leak.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-glk4/igt@gem_ppgtt@flink-and-close-vma-leak.html
- shard-kbl: [PASS][18] -> [FAIL][19] ([i915#644])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-kbl1/igt@gem_ppgtt@flink-and-close-vma-leak.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-kbl3/igt@gem_ppgtt@flink-and-close-vma-leak.html
* igt@i915_suspend@sysfs-reader:
- shard-kbl: [PASS][20] -> [DMESG-WARN][21] ([i915#180]) +1 similar issue
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-kbl6/igt@i915_suspend@sysfs-reader.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-kbl7/igt@i915_suspend@sysfs-reader.html
* igt@kms_flip@flip-vs-suspend:
- shard-iclb: [PASS][22] -> [TIMEOUT][23] ([i915#1284])
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb2/igt@kms_flip@flip-vs-suspend.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb5/igt@kms_flip@flip-vs-suspend.html
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- shard-skl: [PASS][24] -> [INCOMPLETE][25] ([i915#69]) +1 similar issue
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-skl3/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-skl2/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
* igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes:
- shard-iclb: [PASS][26] -> [TIMEOUT][27] ([i915#1346])
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb2/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb5/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html
* igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min:
- shard-skl: [PASS][28] -> [FAIL][29] ([fdo#108145]) +1 similar issue
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-skl9/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-skl7/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
* igt@kms_psr@psr2_cursor_render:
- shard-iclb: [PASS][30] -> [SKIP][31] ([fdo#109441]) +1 similar issue
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb2/igt@kms_psr@psr2_cursor_render.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb4/igt@kms_psr@psr2_cursor_render.html
* igt@kms_vblank@pipe-b-ts-continuation-suspend:
- shard-apl: [PASS][32] -> [DMESG-WARN][33] ([i915#180]) +1 similar issue
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-apl2/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-apl1/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
* igt@perf@oa-exponents:
- shard-glk: [PASS][34] -> [FAIL][35] ([i915#84])
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-glk7/igt@perf@oa-exponents.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-glk7/igt@perf@oa-exponents.html
#### Possible fixes ####
* igt@gem_ctx_persistence@close-replace-race:
- shard-iclb: [INCOMPLETE][36] ([i915#1402]) -> [PASS][37]
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb8/igt@gem_ctx_persistence@close-replace-race.html
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb5/igt@gem_ctx_persistence@close-replace-race.html
- shard-apl: [INCOMPLETE][38] ([fdo#103927] / [i915#1402]) -> [PASS][39]
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-apl7/igt@gem_ctx_persistence@close-replace-race.html
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-apl6/igt@gem_ctx_persistence@close-replace-race.html
- shard-glk: [INCOMPLETE][40] ([i915#1402] / [i915#58] / [k.org#198133]) -> [PASS][41]
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-glk9/igt@gem_ctx_persistence@close-replace-race.html
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-glk6/igt@gem_ctx_persistence@close-replace-race.html
* igt@gem_exec_schedule@implicit-read-write-bsd1:
- shard-iclb: [SKIP][42] ([fdo#109276] / [i915#677]) -> [PASS][43] +2 similar issues
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb7/igt@gem_exec_schedule@implicit-read-write-bsd1.html
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb2/igt@gem_exec_schedule@implicit-read-write-bsd1.html
* igt@gem_exec_schedule@in-order-bsd:
- shard-iclb: [SKIP][44] ([fdo#112146]) -> [PASS][45] +2 similar issues
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb4/igt@gem_exec_schedule@in-order-bsd.html
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb8/igt@gem_exec_schedule@in-order-bsd.html
* igt@gem_exec_schedule@pi-userfault-bsd:
- shard-iclb: [SKIP][46] ([i915#677]) -> [PASS][47]
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb4/igt@gem_exec_schedule@pi-userfault-bsd.html
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb6/igt@gem_exec_schedule@pi-userfault-bsd.html
* igt@gem_exec_whisper@basic-fds-all:
- shard-iclb: [INCOMPLETE][48] ([i915#1401]) -> [PASS][49]
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb6/igt@gem_exec_whisper@basic-fds-all.html
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb3/igt@gem_exec_whisper@basic-fds-all.html
* igt@gem_ppgtt@flink-and-close-vma-leak:
- shard-skl: [FAIL][50] ([i915#644]) -> [PASS][51]
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-skl9/igt@gem_ppgtt@flink-and-close-vma-leak.html
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-skl7/igt@gem_ppgtt@flink-and-close-vma-leak.html
* igt@i915_pm_dc@dc5-dpms:
- shard-iclb: [FAIL][52] ([i915#447]) -> [PASS][53]
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb3/igt@i915_pm_dc@dc5-dpms.html
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb8/igt@i915_pm_dc@dc5-dpms.html
* igt@i915_pm_dc@dc6-dpms:
- shard-iclb: [FAIL][54] ([i915#454]) -> [PASS][55]
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb3/igt@i915_pm_dc@dc6-dpms.html
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb8/igt@i915_pm_dc@dc6-dpms.html
* igt@i915_pm_rps@waitboost:
- shard-iclb: [FAIL][56] ([i915#413]) -> [PASS][57]
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb1/igt@i915_pm_rps@waitboost.html
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb3/igt@i915_pm_rps@waitboost.html
* igt@i915_selftest@live@execlists:
- shard-skl: [INCOMPLETE][58] ([i915#1430] / [i915#656]) -> [PASS][59]
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-skl7/igt@i915_selftest@live@execlists.html
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-skl8/igt@i915_selftest@live@execlists.html
- shard-apl: [INCOMPLETE][60] ([fdo#103927] / [i915#656]) -> [PASS][61]
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-apl8/igt@i915_selftest@live@execlists.html
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-apl3/igt@i915_selftest@live@execlists.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible:
- shard-skl: [FAIL][62] ([i915#79]) -> [PASS][63]
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-skl1/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-skl4/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-skl: [INCOMPLETE][64] ([i915#221]) -> [PASS][65]
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-skl9/igt@kms_flip@flip-vs-suspend-interruptible.html
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-skl2/igt@kms_flip@flip-vs-suspend-interruptible.html
* igt@kms_flip@plain-flip-fb-recreate-interruptible:
- shard-skl: [FAIL][66] ([i915#34]) -> [PASS][67]
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-skl6/igt@kms_flip@plain-flip-fb-recreate-interruptible.html
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-skl5/igt@kms_flip@plain-flip-fb-recreate-interruptible.html
* igt@kms_hdr@bpc-switch-suspend:
- shard-skl: [FAIL][68] ([i915#1188]) -> [PASS][69] +1 similar issue
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-skl7/igt@kms_hdr@bpc-switch-suspend.html
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-skl8/igt@kms_hdr@bpc-switch-suspend.html
* igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min:
- shard-skl: [FAIL][70] ([fdo#108145]) -> [PASS][71]
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-skl8/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-skl3/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
* igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
- shard-skl: [FAIL][72] ([fdo#108145] / [i915#265]) -> [PASS][73]
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-skl3/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-skl4/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
* igt@kms_psr@psr2_cursor_mmap_cpu:
- shard-iclb: [SKIP][74] ([fdo#109441]) -> [PASS][75] +2 similar issues
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb7/igt@kms_psr@psr2_cursor_mmap_cpu.html
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb2/igt@kms_psr@psr2_cursor_mmap_cpu.html
* igt@kms_vblank@pipe-a-ts-continuation-suspend:
- shard-kbl: [DMESG-WARN][76] ([i915#180]) -> [PASS][77] +3 similar issues
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-kbl3/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-kbl4/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
- shard-apl: [DMESG-WARN][78] ([i915#180]) -> [PASS][79] +3 similar issues
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-apl1/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-apl7/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
* igt@perf_pmu@busy-vcs1:
- shard-iclb: [SKIP][80] ([fdo#112080]) -> [PASS][81] +9 similar issues
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb7/igt@perf_pmu@busy-vcs1.html
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb2/igt@perf_pmu@busy-vcs1.html
* igt@prime_busy@hang-bsd:
- shard-skl: [SKIP][82] ([fdo#109271]) -> [PASS][83]
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-skl10/igt@prime_busy@hang-bsd.html
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-skl9/igt@prime_busy@hang-bsd.html
* igt@prime_busy@hang-bsd2:
- shard-iclb: [SKIP][84] ([fdo#109276]) -> [PASS][85] +17 similar issues
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-iclb5/igt@prime_busy@hang-bsd2.html
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-iclb2/igt@prime_busy@hang-bsd2.html
* {igt@sysfs_timeslice_duration@timeout@rcs0}:
- shard-skl: [FAIL][86] ([i915#1459]) -> [PASS][87]
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-skl10/igt@sysfs_timeslice_duration@timeout@rcs0.html
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-skl9/igt@sysfs_timeslice_duration@timeout@rcs0.html
#### Warnings ####
* igt@i915_pm_dc@dc6-psr:
- shard-tglb: [FAIL][88] ([i915#454]) -> [SKIP][89] ([i915#468])
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-tglb8/igt@i915_pm_dc@dc6-psr.html
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-tglb2/igt@i915_pm_dc@dc6-psr.html
* igt@runner@aborted:
- shard-apl: ([FAIL][90], [FAIL][91], [FAIL][92]) ([fdo#103927] / [i915#1402] / [i915#529]) -> [FAIL][93] ([fdo#103927])
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-apl2/igt@runner@aborted.html
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-apl7/igt@runner@aborted.html
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8142/shard-apl8/igt@runner@aborted.html
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/shard-apl1/igt@runner@aborted.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#110841]: https://bugs.freedesktop.org/show_bug.cgi?id=110841
[fdo#110854]: https://bugs.freedesktop.org/show_bug.cgi?id=110854
[fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080
[fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146
[i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
[i915#1284]: https://gitlab.freedesktop.org/drm/intel/issues/1284
[i915#1346]: https://gitlab.freedesktop.org/drm/intel/issues/1346
[i915#1401]: https://gitlab.freedesktop.org/drm/intel/issues/1401
[i915#1402]: https://gitlab.freedesktop.org/drm/intel/issues/1402
[i915#1430]: https://gitlab.freedesktop.org/drm/intel/issues/1430
[i915#1459]: https://gitlab.freedesktop.org/drm/intel/issues/1459
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#221]: https://gitlab.freedesktop.org/drm/intel/issues/221
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#34]: https://gitlab.freedesktop.org/drm/intel/issues/34
[i915#413]: https://gitlab.freedesktop.org/drm/intel/issues/413
[i915#447]: https://gitlab.freedesktop.org/drm/intel/issues/447
[i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454
[i915#468]: https://gitlab.freedesktop.org/drm/intel/issues/468
[i915#529]: https://gitlab.freedesktop.org/drm/intel/issues/529
[i915#58]: https://gitlab.freedesktop.org/drm/intel/issues/58
[i915#644]: https://gitlab.freedesktop.org/drm/intel/issues/644
[i915#656]: https://gitlab.freedesktop.org/drm/intel/issues/656
[i915#677]: https://gitlab.freedesktop.org/drm/intel/issues/677
[i915#69]: https://gitlab.freedesktop.org/drm/intel/issues/69
[i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
[i915#84]: https://gitlab.freedesktop.org/drm/intel/issues/84
[k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_8142 -> Patchwork_16996
CI-20190529: 20190529
CI_DRM_8142: 13dfeddee92ca6b9d134e036ae315e93b96023db @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5514: 921758a91a453e8148b3146ad874bbd4ae4364ec @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_16996: 14c937a62591a82e1bc1d11ebc58194af9959877 @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16996/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev5)
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
` (13 preceding siblings ...)
2020-03-17 22:09 ` [Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev3) Patchwork
@ 2020-03-18 4:33 ` Patchwork
14 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2020-03-18 4:33 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev5)
URL : https://patchwork.freedesktop.org/series/74759/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_8144_full -> Patchwork_17001_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
New tests
---------
New tests have been introduced between CI_DRM_8144_full and Patchwork_17001_full:
### New IGT tests (1) ###
* igt@sysfs_preempt_timeout@idempotent:
- Statuses :
- Exec time: [None] s
Known issues
------------
Here are the changes found in Patchwork_17001_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_busy@busy-vcs1:
- shard-iclb: [PASS][1] -> [SKIP][2] ([fdo#112080]) +12 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb1/igt@gem_busy@busy-vcs1.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb6/igt@gem_busy@busy-vcs1.html
* igt@gem_ctx_isolation@rcs0-s3:
- shard-kbl: [PASS][3] -> [DMESG-WARN][4] ([i915#180]) +4 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-kbl2/igt@gem_ctx_isolation@rcs0-s3.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-kbl2/igt@gem_ctx_isolation@rcs0-s3.html
- shard-skl: [PASS][5] -> [INCOMPLETE][6] ([i915#69])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-skl10/igt@gem_ctx_isolation@rcs0-s3.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-skl5/igt@gem_ctx_isolation@rcs0-s3.html
* igt@gem_exec_schedule@implicit-both-bsd2:
- shard-iclb: [PASS][7] -> [SKIP][8] ([fdo#109276] / [i915#677]) +1 similar issue
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb1/igt@gem_exec_schedule@implicit-both-bsd2.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb6/igt@gem_exec_schedule@implicit-both-bsd2.html
* igt@gem_exec_schedule@independent-bsd2:
- shard-iclb: [PASS][9] -> [SKIP][10] ([fdo#109276]) +21 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb1/igt@gem_exec_schedule@independent-bsd2.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb6/igt@gem_exec_schedule@independent-bsd2.html
* igt@gem_exec_schedule@pi-common-bsd:
- shard-iclb: [PASS][11] -> [SKIP][12] ([i915#677]) +1 similar issue
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb3/igt@gem_exec_schedule@pi-common-bsd.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb2/igt@gem_exec_schedule@pi-common-bsd.html
* igt@gem_exec_schedule@preempt-other-chain-bsd:
- shard-iclb: [PASS][13] -> [SKIP][14] ([fdo#112146]) +3 similar issues
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb3/igt@gem_exec_schedule@preempt-other-chain-bsd.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb2/igt@gem_exec_schedule@preempt-other-chain-bsd.html
* igt@kms_atomic_transition@1x-modeset-transitions-nonblocking-fencing:
- shard-snb: [PASS][15] -> [SKIP][16] ([fdo#109271]) +6 similar issues
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-snb4/igt@kms_atomic_transition@1x-modeset-transitions-nonblocking-fencing.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-snb4/igt@kms_atomic_transition@1x-modeset-transitions-nonblocking-fencing.html
* igt@kms_cursor_legacy@2x-long-flip-vs-cursor-legacy:
- shard-glk: [PASS][17] -> [FAIL][18] ([i915#72])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-glk4/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-legacy.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-glk8/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-legacy.html
* igt@kms_hdr@bpc-switch-suspend:
- shard-skl: [PASS][19] -> [FAIL][20] ([i915#1188])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-skl6/igt@kms_hdr@bpc-switch-suspend.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-skl1/igt@kms_hdr@bpc-switch-suspend.html
* igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes:
- shard-kbl: [PASS][21] -> [INCOMPLETE][22] ([i915#648])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-kbl7/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-kbl4/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html
* igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes:
- shard-apl: [PASS][23] -> [DMESG-WARN][24] ([i915#180])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-apl1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-apl1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
* igt@kms_plane_alpha_blend@pipe-a-coverage-7efc:
- shard-skl: [PASS][25] -> [FAIL][26] ([fdo#108145])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-skl3/igt@kms_plane_alpha_blend@pipe-a-coverage-7efc.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-skl7/igt@kms_plane_alpha_blend@pipe-a-coverage-7efc.html
* igt@kms_psr@psr2_sprite_plane_move:
- shard-iclb: [PASS][27] -> [SKIP][28] ([fdo#109441]) +3 similar issues
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb2/igt@kms_psr@psr2_sprite_plane_move.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb4/igt@kms_psr@psr2_sprite_plane_move.html
* igt@kms_setmode@basic:
- shard-apl: [PASS][29] -> [FAIL][30] ([i915#31])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-apl2/igt@kms_setmode@basic.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-apl7/igt@kms_setmode@basic.html
#### Possible fixes ####
* igt@gem_ctx_persistence@close-replace-race:
- shard-tglb: [INCOMPLETE][31] ([i915#1402]) -> [PASS][32]
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-tglb3/igt@gem_ctx_persistence@close-replace-race.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-tglb7/igt@gem_ctx_persistence@close-replace-race.html
- shard-kbl: [INCOMPLETE][33] ([i915#1402]) -> [PASS][34]
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-kbl7/igt@gem_ctx_persistence@close-replace-race.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-kbl3/igt@gem_ctx_persistence@close-replace-race.html
- shard-iclb: [INCOMPLETE][35] ([i915#1402]) -> [PASS][36]
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb3/igt@gem_ctx_persistence@close-replace-race.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb2/igt@gem_ctx_persistence@close-replace-race.html
- shard-apl: [INCOMPLETE][37] ([fdo#103927] / [i915#1402]) -> [PASS][38]
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-apl4/igt@gem_ctx_persistence@close-replace-race.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-apl3/igt@gem_ctx_persistence@close-replace-race.html
- shard-glk: [INCOMPLETE][39] ([i915#1402] / [i915#58] / [k.org#198133]) -> [PASS][40]
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-glk1/igt@gem_ctx_persistence@close-replace-race.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-glk1/igt@gem_ctx_persistence@close-replace-race.html
* igt@gem_ctx_shared@exec-single-timeline-bsd:
- shard-iclb: [SKIP][41] ([fdo#110841]) -> [PASS][42]
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb1/igt@gem_ctx_shared@exec-single-timeline-bsd.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb6/igt@gem_ctx_shared@exec-single-timeline-bsd.html
* igt@gem_exec_async@concurrent-writes-blt:
- shard-tglb: [FAIL][43] ([i915#1331]) -> [PASS][44]
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-tglb8/igt@gem_exec_async@concurrent-writes-blt.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-tglb1/igt@gem_exec_async@concurrent-writes-blt.html
* igt@gem_exec_balancer@bonded-slice:
- shard-tglb: [FAIL][45] -> [PASS][46]
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-tglb7/igt@gem_exec_balancer@bonded-slice.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-tglb1/igt@gem_exec_balancer@bonded-slice.html
* igt@gem_exec_capture@capture-bsd:
- shard-iclb: [SKIP][47] ([fdo#112146]) -> [PASS][48] +1 similar issue
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb4/igt@gem_exec_capture@capture-bsd.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb7/igt@gem_exec_capture@capture-bsd.html
* igt@gem_exec_parallel@vcs1-fds:
- shard-iclb: [SKIP][49] ([fdo#112080]) -> [PASS][50] +17 similar issues
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb6/igt@gem_exec_parallel@vcs1-fds.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb1/igt@gem_exec_parallel@vcs1-fds.html
* igt@gem_exec_schedule@implicit-both-bsd:
- shard-iclb: [SKIP][51] ([i915#677]) -> [PASS][52]
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb4/igt@gem_exec_schedule@implicit-both-bsd.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb7/igt@gem_exec_schedule@implicit-both-bsd.html
* igt@gem_ppgtt@flink-and-close-vma-leak:
- shard-glk: [FAIL][53] ([i915#644]) -> [PASS][54]
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-glk2/igt@gem_ppgtt@flink-and-close-vma-leak.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-glk3/igt@gem_ppgtt@flink-and-close-vma-leak.html
- shard-tglb: [FAIL][55] ([i915#644]) -> [PASS][56]
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-tglb3/igt@gem_ppgtt@flink-and-close-vma-leak.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-tglb2/igt@gem_ppgtt@flink-and-close-vma-leak.html
- shard-kbl: [FAIL][57] ([i915#644]) -> [PASS][58]
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-kbl7/igt@gem_ppgtt@flink-and-close-vma-leak.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-kbl3/igt@gem_ppgtt@flink-and-close-vma-leak.html
* igt@i915_pm_dc@dc6-dpms:
- shard-iclb: [FAIL][59] ([i915#454]) -> [PASS][60]
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb3/igt@i915_pm_dc@dc6-dpms.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb5/igt@i915_pm_dc@dc6-dpms.html
* igt@i915_pm_rps@reset:
- shard-iclb: [FAIL][61] ([i915#413]) -> [PASS][62]
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb6/igt@i915_pm_rps@reset.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb1/igt@i915_pm_rps@reset.html
* igt@kms_ccs@pipe-a-crc-primary-basic:
- shard-skl: [FAIL][63] -> [PASS][64]
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-skl4/igt@kms_ccs@pipe-a-crc-primary-basic.html
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-skl10/igt@kms_ccs@pipe-a-crc-primary-basic.html
* igt@kms_cursor_crc@pipe-c-cursor-suspend:
- shard-apl: [DMESG-WARN][65] ([i915#180]) -> [PASS][66] +1 similar issue
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-apl4/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-apl3/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
* igt@kms_cursor_legacy@flip-vs-cursor-toggle:
- shard-skl: [FAIL][67] ([IGT#5] / [i915#697]) -> [PASS][68]
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-skl8/igt@kms_cursor_legacy@flip-vs-cursor-toggle.html
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-skl4/igt@kms_cursor_legacy@flip-vs-cursor-toggle.html
* igt@kms_dp_dsc@basic-dsc-enable-edp:
- shard-iclb: [SKIP][69] ([fdo#109349]) -> [PASS][70]
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb3/igt@kms_dp_dsc@basic-dsc-enable-edp.html
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html
* igt@kms_flip@2x-flip-vs-expired-vblank:
- shard-glk: [FAIL][71] ([i915#46]) -> [PASS][72]
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-glk2/igt@kms_flip@2x-flip-vs-expired-vblank.html
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-glk8/igt@kms_flip@2x-flip-vs-expired-vblank.html
* igt@kms_plane_alpha_blend@pipe-b-coverage-7efc:
- shard-skl: [FAIL][73] ([fdo#108145] / [i915#265]) -> [PASS][74]
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-skl1/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-skl9/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html
* igt@kms_psr@psr2_cursor_render:
- shard-iclb: [SKIP][75] ([fdo#109441]) -> [PASS][76] +1 similar issue
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb8/igt@kms_psr@psr2_cursor_render.html
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb2/igt@kms_psr@psr2_cursor_render.html
* igt@kms_vblank@pipe-a-ts-continuation-suspend:
- shard-kbl: [DMESG-WARN][77] ([i915#180]) -> [PASS][78] +2 similar issues
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-kbl6/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-kbl1/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
* igt@prime_vgem@fence-wait-bsd2:
- shard-iclb: [SKIP][79] ([fdo#109276]) -> [PASS][80] +16 similar issues
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-iclb3/igt@prime_vgem@fence-wait-bsd2.html
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-iclb2/igt@prime_vgem@fence-wait-bsd2.html
#### Warnings ####
* igt@i915_pm_dc@dc6-dpms:
- shard-tglb: [FAIL][81] ([i915#454]) -> [SKIP][82] ([i915#468])
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-tglb3/igt@i915_pm_dc@dc6-dpms.html
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-tglb2/igt@i915_pm_dc@dc6-dpms.html
* igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes:
- shard-kbl: [INCOMPLETE][83] -> [DMESG-WARN][84] ([i915#180])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-kbl3/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-kbl7/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html
* igt@runner@aborted:
- shard-kbl: ([FAIL][85], [FAIL][86]) ([i915#1389] / [i915#1402] / [i915#92]) -> [FAIL][87] ([i915#92])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-kbl6/igt@runner@aborted.html
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-kbl7/igt@runner@aborted.html
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-kbl6/igt@runner@aborted.html
- shard-apl: ([FAIL][88], [FAIL][89]) ([fdo#103927] / [i915#1402]) -> [FAIL][90] ([fdo#103927])
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-apl4/igt@runner@aborted.html
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-apl3/igt@runner@aborted.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-apl1/igt@runner@aborted.html
- shard-glk: ([FAIL][91], [FAIL][92]) ([i915#1402] / [k.org#202321]) -> [FAIL][93] ([k.org#202321])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-glk9/igt@runner@aborted.html
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8144/shard-glk1/igt@runner@aborted.html
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/shard-glk7/igt@runner@aborted.html
[IGT#5]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/5
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#110841]: https://bugs.freedesktop.org/show_bug.cgi?id=110841
[fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080
[fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146
[i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
[i915#1331]: https://gitlab.freedesktop.org/drm/intel/issues/1331
[i915#1389]: https://gitlab.freedesktop.org/drm/intel/issues/1389
[i915#1402]: https://gitlab.freedesktop.org/drm/intel/issues/1402
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31
[i915#413]: https://gitlab.freedesktop.org/drm/intel/issues/413
[i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454
[i915#46]: https://gitlab.freedesktop.org/drm/intel/issues/46
[i915#468]: https://gitlab.freedesktop.org/drm/intel/issues/468
[i915#58]: https://gitlab.freedesktop.org/drm/intel/issues/58
[i915#644]: https://gitlab.freedesktop.org/drm/intel/issues/644
[i915#648]: https://gitlab.freedesktop.org/drm/intel/issues/648
[i915#677]: https://gitlab.freedesktop.org/drm/intel/issues/677
[i915#69]: https://gitlab.freedesktop.org/drm/intel/issues/69
[i915#697]: https://gitlab.freedesktop.org/drm/intel/issues/697
[i915#72]: https://gitlab.freedesktop.org/drm/intel/issues/72
[i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92
[k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133
[k.org#202321]: https://bugzilla.kernel.org/show_bug.cgi?id=202321
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_8144 -> Patchwork_17001
CI-20190529: 20190529
CI_DRM_8144: e22a73e6b26efdc18bd44d26c93e16c2783ab3f4 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5517: b77e3a470bdf1bc5f047ebb98ed8ca4738dd44c7 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_17001: dad111ed0f4138aa9cea4cc980d1881b500726cf @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17001/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2020-03-18 4:33 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-16 22:51 [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Chris Wilson
2020-03-17 1:30 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for " Patchwork
2020-03-17 1:38 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2020-03-17 10:59 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2020-03-17 12:17 ` [Intel-gfx] [PATCH] " Chris Wilson
2020-03-17 12:58 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev2) Patchwork
2020-03-17 13:10 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2020-03-17 13:55 ` [Intel-gfx] [PATCH] drm/i915/gem: Avoid gem_context->mutex for simple vma lookup Dan Carpenter
2020-03-17 14:09 ` [Intel-gfx] [PATCH v2] " Chris Wilson
2020-03-17 19:11 ` [Intel-gfx] [PATCH v3] " Chris Wilson
2020-03-17 20:25 ` [Intel-gfx] [PATCH] " Chris Wilson
2020-03-17 15:49 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev3) Patchwork
2020-03-17 16:00 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2020-03-17 18:05 ` [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev2) Patchwork
2020-03-17 19:53 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev4) Patchwork
2020-03-17 21:31 ` [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev5) Patchwork
2020-03-17 22:09 ` [Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev3) Patchwork
2020-03-18 4:33 ` [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/gem: Avoid gem_context->mutex for simple vma lookup (rev5) Patchwork
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).