* [Intel-gfx] [CI] drm/i915/gt: Tidy up checking active timelines during retirement
@ 2019-12-22 21:37 Chris Wilson
2019-12-22 23:14 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915/gt: Tidy up checking active timelines during retirement (rev6) Patchwork
0 siblings, 1 reply; 2+ messages in thread
From: Chris Wilson @ 2019-12-22 21:37 UTC (permalink / raw)
To: intel-gfx
Use the status of the timeline request list as we retire it to determine
if the timeline is still active.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Andi Shyti <andi.shyti@intel.com>
---
drivers/gpu/drm/i915/gt/intel_gt_requests.c | 26 ++++++++++-----------
1 file changed, 12 insertions(+), 14 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/intel_gt_requests.c b/drivers/gpu/drm/i915/gt/intel_gt_requests.c
index b4f04614230e..b57c144621e9 100644
--- a/drivers/gpu/drm/i915/gt/intel_gt_requests.c
+++ b/drivers/gpu/drm/i915/gt/intel_gt_requests.c
@@ -14,27 +14,29 @@
#include "intel_gt_requests.h"
#include "intel_timeline.h"
-static void retire_requests(struct intel_timeline *tl)
+static bool retire_requests(struct intel_timeline *tl)
{
struct i915_request *rq, *rn;
list_for_each_entry_safe(rq, rn, &tl->requests, link)
if (!i915_request_retire(rq))
- break;
+ return false;
+
+ return true;
}
-static bool flush_submission(struct intel_gt *gt)
+static void flush_submission(struct intel_gt *gt)
{
struct intel_engine_cs *engine;
enum intel_engine_id id;
- bool active = false;
+
+ if (!intel_gt_pm_is_awake(gt))
+ return;
for_each_engine(engine, gt, id) {
- active |= intel_engine_flush_submission(engine);
- active |= flush_work(&engine->retire_work);
+ intel_engine_flush_submission(engine);
+ flush_work(&engine->retire_work);
}
-
- return active;
}
static void engine_retire(struct work_struct *work)
@@ -145,16 +147,15 @@ long intel_gt_retire_requests_timeout(struct intel_gt *gt, long timeout)
}
}
- retire_requests(tl);
+ active_count += !retire_requests(tl);
+ flush_submission(gt);
spin_lock(&timelines->lock);
/* Resume iteration after dropping lock */
list_safe_reset_next(tl, tn, link);
if (atomic_dec_and_test(&tl->active_count))
list_del(&tl->link);
- else
- active_count += i915_active_fence_isset(&tl->last_request);
mutex_unlock(&tl->mutex);
@@ -169,9 +170,6 @@ long intel_gt_retire_requests_timeout(struct intel_gt *gt, long timeout)
list_for_each_entry_safe(tl, tn, &free, link)
__intel_timeline_free(&tl->kref);
- if (flush_submission(gt))
- active_count++;
-
return active_count ? timeout : 0;
}
--
2.24.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915/gt: Tidy up checking active timelines during retirement (rev6)
2019-12-22 21:37 [Intel-gfx] [CI] drm/i915/gt: Tidy up checking active timelines during retirement Chris Wilson
@ 2019-12-22 23:14 ` Patchwork
0 siblings, 0 replies; 2+ messages in thread
From: Patchwork @ 2019-12-22 23:14 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/gt: Tidy up checking active timelines during retirement (rev6)
URL : https://patchwork.freedesktop.org/series/71266/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_7623 -> Patchwork_15889
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_15889 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_15889, 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_15889/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_15889:
### IGT changes ###
#### Possible regressions ####
* igt@i915_selftest@live_active:
- fi-hsw-4770r: [PASS][1] -> [FAIL][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-hsw-4770r/igt@i915_selftest@live_active.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-hsw-4770r/igt@i915_selftest@live_active.html
* igt@i915_selftest@live_gtt:
- fi-bwr-2160: NOTRUN -> [FAIL][3] +5 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-bwr-2160/igt@i915_selftest@live_gtt.html
Known issues
------------
Here are the changes found in Patchwork_15889 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_close_race@basic-threads:
- fi-byt-j1900: [PASS][4] -> [TIMEOUT][5] ([i915#816])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-byt-j1900/igt@gem_close_race@basic-threads.html
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-byt-j1900/igt@gem_close_race@basic-threads.html
* igt@gem_exec_suspend@basic-s3:
- fi-icl-u2: [PASS][6] -> [FAIL][7] ([fdo#103375])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-icl-u2/igt@gem_exec_suspend@basic-s3.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-icl-u2/igt@gem_exec_suspend@basic-s3.html
* igt@gem_exec_suspend@basic-s4-devices:
- fi-icl-u2: [PASS][8] -> [FAIL][9] ([fdo#111550])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-icl-u2/igt@gem_exec_suspend@basic-s4-devices.html
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-icl-u2/igt@gem_exec_suspend@basic-s4-devices.html
* igt@i915_module_load@reload-with-fault-injection:
- fi-bxt-dsi: [PASS][10] -> [INCOMPLETE][11] ([fdo#103927])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-bxt-dsi/igt@i915_module_load@reload-with-fault-injection.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-bxt-dsi/igt@i915_module_load@reload-with-fault-injection.html
* igt@i915_selftest@live_blt:
- fi-hsw-4770: [PASS][12] -> [DMESG-FAIL][13] ([i915#725])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-hsw-4770/igt@i915_selftest@live_blt.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-hsw-4770/igt@i915_selftest@live_blt.html
#### Possible fixes ####
* igt@gem_close_race@basic-threads:
- {fi-tgl-guc}: [INCOMPLETE][14] ([i915#435]) -> [PASS][15]
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-tgl-guc/igt@gem_close_race@basic-threads.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-tgl-guc/igt@gem_close_race@basic-threads.html
* igt@i915_module_load@reload-with-fault-injection:
- fi-cfl-8700k: [INCOMPLETE][16] ([i915#505]) -> [PASS][17]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-cfl-8700k/igt@i915_module_load@reload-with-fault-injection.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-cfl-8700k/igt@i915_module_load@reload-with-fault-injection.html
* igt@i915_selftest@live_execlists:
- fi-icl-u2: [INCOMPLETE][18] ([fdo#112175] / [i915#140]) -> [PASS][19]
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-icl-u2/igt@i915_selftest@live_execlists.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-icl-u2/igt@i915_selftest@live_execlists.html
- fi-kbl-r: [INCOMPLETE][20] ([fdo#112175] / [fdo#112259]) -> [PASS][21]
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-kbl-r/igt@i915_selftest@live_execlists.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-kbl-r/igt@i915_selftest@live_execlists.html
#### Warnings ####
* igt@i915_module_load@reload-with-fault-injection:
- fi-kbl-x1275: [INCOMPLETE][22] -> [DMESG-WARN][23] ([i915#62] / [i915#92] / [i915#95])
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-kbl-x1275/igt@i915_module_load@reload-with-fault-injection.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-kbl-x1275/igt@i915_module_load@reload-with-fault-injection.html
* igt@i915_selftest@live_blt:
- fi-ivb-3770: [DMESG-FAIL][24] ([i915#725]) -> [DMESG-FAIL][25] ([i915#770])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-ivb-3770/igt@i915_selftest@live_blt.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-ivb-3770/igt@i915_selftest@live_blt.html
* igt@kms_chamelium@common-hpd-after-suspend:
- fi-icl-u2: [DMESG-WARN][26] ([IGT#4] / [i915#263]) -> [FAIL][27] ([fdo#103375])
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-icl-u2/igt@kms_chamelium@common-hpd-after-suspend.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-icl-u2/igt@kms_chamelium@common-hpd-after-suspend.html
* igt@kms_flip@basic-flip-vs-modeset:
- fi-kbl-x1275: [DMESG-WARN][28] ([i915#62] / [i915#92]) -> [DMESG-WARN][29] ([i915#62] / [i915#92] / [i915#95]) +11 similar issues
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-kbl-x1275/igt@kms_flip@basic-flip-vs-modeset.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-kbl-x1275/igt@kms_flip@basic-flip-vs-modeset.html
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- fi-kbl-x1275: [DMESG-WARN][30] ([i915#62] / [i915#92] / [i915#95]) -> [DMESG-WARN][31] ([i915#62] / [i915#92]) +1 similar issue
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7623/fi-kbl-x1275/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/fi-kbl-x1275/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[IGT#4]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/4
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#111550]: https://bugs.freedesktop.org/show_bug.cgi?id=111550
[fdo#112175]: https://bugs.freedesktop.org/show_bug.cgi?id=112175
[fdo#112259]: https://bugs.freedesktop.org/show_bug.cgi?id=112259
[i915#140]: https://gitlab.freedesktop.org/drm/intel/issues/140
[i915#263]: https://gitlab.freedesktop.org/drm/intel/issues/263
[i915#435]: https://gitlab.freedesktop.org/drm/intel/issues/435
[i915#505]: https://gitlab.freedesktop.org/drm/intel/issues/505
[i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62
[i915#725]: https://gitlab.freedesktop.org/drm/intel/issues/725
[i915#770]: https://gitlab.freedesktop.org/drm/intel/issues/770
[i915#816]: https://gitlab.freedesktop.org/drm/intel/issues/816
[i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92
[i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95
Participating hosts (40 -> 41)
------------------------------
Additional (9): fi-hsw-peppy fi-skl-guc fi-bwr-2160 fi-snb-2520m fi-kbl-7500u fi-whl-u fi-skl-lmem fi-byt-n2820 fi-skl-6600u
Missing (8): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-bdw-gvtdvm fi-bsw-cyan fi-ctg-p8600 fi-byt-clapper fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_7623 -> Patchwork_15889
CI-20190529: 20190529
CI_DRM_7623: 08c8f85caff9f010e7c66e79a2b6fa8a4a230fc8 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5352: 0586d205f651674e575351c2d5a7d0760716c9f1 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_15889: c816a66091d65203a3f992259697501d5dfab6bc @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
c816a66091d6 drm/i915/gt: Tidy up checking active timelines during retirement
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15889/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-12-22 23:14 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-22 21:37 [Intel-gfx] [CI] drm/i915/gt: Tidy up checking active timelines during retirement Chris Wilson
2019-12-22 23:14 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915/gt: Tidy up checking active timelines during retirement (rev6) Patchwork
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.