* [PATCH] drm/i915: Cancel persistent contexts if !hangcheck
@ 2019-08-05 22:19 Chris Wilson
2019-08-05 22:45 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Chris Wilson @ 2019-08-05 22:19 UTC (permalink / raw)
To: intel-gfx
Normally, we rely on our hangcheck to prevent persistent batches from
hogging the GPU. However, if the user disables hangcheck, this mechanism
breaks down. Despite our insistence that this is unsafe, the users are
equally insistent that they want to use endless batches and will disable
the hangcheck mechanism. We are looking are perhaps replacing hangcheck
with a softer mechanism, that sends a pulse down the engine to check if
it is well. We can use the same preemptive pulse to flush an active
persistent context off the GPU upon context close, preventing resources
being lost and unkillable requests remaining on the GPU, after process
termination.
XXX Fixup banned contexts on schedule-out, so that we don't jump back
into the middle of an infinite loop on resume.
XXX This does need a preempt-to-idle style of pulse, I need to set a
flag on the request to prevent queuing into the second port, so that we
have a context-out evebt where we can patch up the context image.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Jon Bloomfield <jon.bloomfield@intel.com>
---
Same sort of caveats as for hangcheck, a few corner cases need
struct_mutex and some preallocation.
---
drivers/gpu/drm/i915/Makefile | 3 +-
drivers/gpu/drm/i915/gem/i915_gem_context.c | 46 ++++++++++++++++
.../gpu/drm/i915/gt/intel_engine_heartbeat.c | 53 +++++++++++++++++++
.../gpu/drm/i915/gt/intel_engine_heartbeat.h | 14 +++++
4 files changed, 115 insertions(+), 1 deletion(-)
create mode 100644 drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c
create mode 100644 drivers/gpu/drm/i915/gt/intel_engine_heartbeat.h
diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
index a1016858d014..455f5c6213ee 100644
--- a/drivers/gpu/drm/i915/Makefile
+++ b/drivers/gpu/drm/i915/Makefile
@@ -71,8 +71,9 @@ obj-y += gt/
gt-y += \
gt/intel_breadcrumbs.o \
gt/intel_context.o \
- gt/intel_engine_pool.o \
gt/intel_engine_cs.o \
+ gt/intel_engine_heartbeat.o \
+ gt/intel_engine_pool.o \
gt/intel_engine_pm.o \
gt/intel_gt.o \
gt/intel_gt_pm.o \
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_context.c b/drivers/gpu/drm/i915/gem/i915_gem_context.c
index 64f7a533e886..bdf21cf9ce3c 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_context.c
@@ -70,6 +70,7 @@
#include <drm/i915_drm.h>
#include "gt/intel_lrc_reg.h"
+#include "gt/intel_engine_heartbeat.h"
#include "i915_gem_context.h"
#include "i915_globals.h"
@@ -373,6 +374,42 @@ void i915_gem_context_release(struct kref *ref)
queue_work(i915->wq, &i915->contexts.free_work);
}
+static void kill_context(struct i915_gem_context *ctx)
+{
+ struct i915_gem_engines_iter it;
+ struct intel_engine_cs *engine;
+ intel_engine_mask_t tmp, active;
+ struct intel_context *ce;
+
+ if (i915_gem_context_is_banned(ctx))
+ return;
+
+ i915_gem_context_set_banned(ctx);
+
+ active = 0;
+ for_each_gem_engine(ce, i915_gem_context_lock_engines(ctx), it) {
+ struct i915_request *rq;
+
+ rq = i915_active_request_get_unlocked(&ce->ring->timeline->last_request);
+ if (!rq)
+ continue;
+
+ active |= rq->engine->mask;
+ i915_request_put(rq);
+ }
+ i915_gem_context_unlock_engines(ctx);
+
+ /*
+ * Send a "high priority pulse" down the engine to cause the
+ * current request to be momentarily preempted. (If it fails to
+ * be preempted, it will be reset). As we have marked our context
+ * as banned, any incomplete request, including any running, will
+ * be skipped.
+ */
+ for_each_engine_masked(engine, ctx->i915, active, tmp)
+ intel_engine_pulse(engine);
+}
+
static void context_close(struct i915_gem_context *ctx)
{
mutex_lock(&ctx->mutex);
@@ -394,6 +431,15 @@ static void context_close(struct i915_gem_context *ctx)
lut_close(ctx);
mutex_unlock(&ctx->mutex);
+
+ /*
+ * If the user has disabled hangchecking, we can not be sure that
+ * the batches will ever complete and let the context be freed.
+ * Forcibly kill off any remaining requests in this case.
+ */
+ if (!i915_modparams.enable_hangcheck)
+ kill_context(ctx);
+
i915_gem_context_put(ctx);
}
diff --git a/drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c b/drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c
new file mode 100644
index 000000000000..0c6ea9750048
--- /dev/null
+++ b/drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c
@@ -0,0 +1,53 @@
+/*
+ * SPDX-License-Identifier: MIT
+ *
+ * Copyright © 2019 Intel Corporation
+ */
+
+#include "i915_request.h"
+
+#include "intel_context.h"
+#include "intel_engine_heartbeat.h"
+#include "intel_engine_pm.h"
+#include "intel_engine.h"
+#include "intel_gt.h"
+
+void intel_engine_pulse(struct intel_engine_cs *engine)
+{
+ struct intel_context *ce = engine->kernel_context;
+ struct i915_sched_attr attr = { .priority = INT_MAX };
+ struct i915_request *rq;
+ int err;
+
+ GEM_BUG_ON(!engine->schedule);
+
+ if (!intel_engine_pm_get_if_awake(engine))
+ return;
+
+ mutex_lock(&ce->ring->timeline->mutex);
+
+ intel_context_enter(ce);
+ rq = __i915_request_create(ce, GFP_NOWAIT | __GFP_NOWARN);
+ intel_context_exit(ce);
+ if (IS_ERR(rq)) {
+ err = PTR_ERR(rq);
+ goto out_unlock;
+ }
+ i915_request_get(rq);
+
+ engine->wakeref_serial = engine->serial + 1;
+ __i915_request_commit(rq);
+
+ local_bh_disable();
+ engine->schedule(rq, &attr);
+ local_bh_enable();
+
+ i915_request_put(rq);
+
+out_unlock:
+ mutex_unlock(&ce->ring->timeline->mutex);
+ intel_context_timeline_unlock(ce);
+ intel_engine_pm_put(engine);
+ if (err) /* XXX must not be allowed to fail */
+ DRM_ERROR("Failed to ping %s, err=%d\n", engine->name, err);
+}
diff --git a/drivers/gpu/drm/i915/gt/intel_engine_heartbeat.h b/drivers/gpu/drm/i915/gt/intel_engine_heartbeat.h
new file mode 100644
index 000000000000..86761748dc21
--- /dev/null
+++ b/drivers/gpu/drm/i915/gt/intel_engine_heartbeat.h
@@ -0,0 +1,14 @@
+/*
+ * SPDX-License-Identifier: MIT
+ *
+ * Copyright © 2019 Intel Corporation
+ */
+
+#ifndef INTEL_ENGINE_HEARTBEAT_H
+#define INTEL_ENGINE_HEARTBEAT_H
+
+struct intel_engine_cs;
+
+void intel_engine_pulse(struct intel_engine_cs *engine);
+
+#endif /* INTEL_ENGINE_HEARTBEAT_H */
--
2.23.0.rc1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 5+ messages in thread
* ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Cancel persistent contexts if !hangcheck
2019-08-05 22:19 [PATCH] drm/i915: Cancel persistent contexts if !hangcheck Chris Wilson
@ 2019-08-05 22:45 ` Patchwork
2019-08-05 23:11 ` ✗ Fi.CI.BAT: failure " Patchwork
2019-08-06 8:35 ` [PATCH] " Andi Shyti
2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2019-08-05 22:45 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915: Cancel persistent contexts if !hangcheck
URL : https://patchwork.freedesktop.org/series/64737/
State : warning
== Summary ==
$ dim checkpatch origin/drm-tip
43ca0ddb4fd8 drm/i915: Cancel persistent contexts if !hangcheck
-:119: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does MAINTAINERS need updating?
#119:
new file mode 100644
-:124: WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier tag in line 1
#124: FILE: drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c:1:
+/*
-:125: WARNING:SPDX_LICENSE_TAG: Misplaced SPDX-License-Identifier tag - use line 1 instead
#125: FILE: drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c:2:
+ * SPDX-License-Identifier: MIT
-:183: WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier tag in line 1
#183: FILE: drivers/gpu/drm/i915/gt/intel_engine_heartbeat.h:1:
+/*
-:184: WARNING:SPDX_LICENSE_TAG: Misplaced SPDX-License-Identifier tag - use line 1 instead
#184: FILE: drivers/gpu/drm/i915/gt/intel_engine_heartbeat.h:2:
+ * SPDX-License-Identifier: MIT
total: 0 errors, 5 warnings, 0 checks, 141 lines checked
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread
* ✗ Fi.CI.BAT: failure for drm/i915: Cancel persistent contexts if !hangcheck
2019-08-05 22:19 [PATCH] drm/i915: Cancel persistent contexts if !hangcheck Chris Wilson
2019-08-05 22:45 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
@ 2019-08-05 23:11 ` Patchwork
2019-08-06 8:35 ` [PATCH] " Andi Shyti
2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2019-08-05 23:11 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915: Cancel persistent contexts if !hangcheck
URL : https://patchwork.freedesktop.org/series/64737/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_6633 -> Patchwork_13877
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_13877 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_13877, 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_13877/
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_13877:
### IGT changes ###
#### Possible regressions ####
* igt@i915_selftest@live_hangcheck:
- fi-bdw-gvtdvm: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-bdw-gvtdvm/igt@i915_selftest@live_hangcheck.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-bdw-gvtdvm/igt@i915_selftest@live_hangcheck.html
- fi-bdw-5557u: [PASS][3] -> [INCOMPLETE][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-bdw-5557u/igt@i915_selftest@live_hangcheck.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-bdw-5557u/igt@i915_selftest@live_hangcheck.html
- fi-bwr-2160: [PASS][5] -> [INCOMPLETE][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-bwr-2160/igt@i915_selftest@live_hangcheck.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-bwr-2160/igt@i915_selftest@live_hangcheck.html
- fi-snb-2520m: [PASS][7] -> [INCOMPLETE][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-snb-2520m/igt@i915_selftest@live_hangcheck.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-snb-2520m/igt@i915_selftest@live_hangcheck.html
- fi-cfl-8700k: [PASS][9] -> [INCOMPLETE][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-cfl-8700k/igt@i915_selftest@live_hangcheck.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-cfl-8700k/igt@i915_selftest@live_hangcheck.html
- fi-whl-u: [PASS][11] -> [INCOMPLETE][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-whl-u/igt@i915_selftest@live_hangcheck.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-whl-u/igt@i915_selftest@live_hangcheck.html
- fi-ilk-650: [PASS][13] -> [INCOMPLETE][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-ilk-650/igt@i915_selftest@live_hangcheck.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-ilk-650/igt@i915_selftest@live_hangcheck.html
- fi-cfl-guc: [PASS][15] -> [INCOMPLETE][16]
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-cfl-guc/igt@i915_selftest@live_hangcheck.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-cfl-guc/igt@i915_selftest@live_hangcheck.html
- fi-blb-e6850: [PASS][17] -> [INCOMPLETE][18]
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-blb-e6850/igt@i915_selftest@live_hangcheck.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-blb-e6850/igt@i915_selftest@live_hangcheck.html
- fi-hsw-4770: [PASS][19] -> [INCOMPLETE][20]
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-hsw-4770/igt@i915_selftest@live_hangcheck.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-hsw-4770/igt@i915_selftest@live_hangcheck.html
- fi-ivb-3770: [PASS][21] -> [INCOMPLETE][22]
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-ivb-3770/igt@i915_selftest@live_hangcheck.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-ivb-3770/igt@i915_selftest@live_hangcheck.html
- fi-hsw-4770r: [PASS][23] -> [INCOMPLETE][24]
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-hsw-4770r/igt@i915_selftest@live_hangcheck.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-hsw-4770r/igt@i915_selftest@live_hangcheck.html
- fi-hsw-peppy: [PASS][25] -> [INCOMPLETE][26]
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-hsw-peppy/igt@i915_selftest@live_hangcheck.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-hsw-peppy/igt@i915_selftest@live_hangcheck.html
* igt@runner@aborted:
- fi-ilk-650: NOTRUN -> [FAIL][27]
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-ilk-650/igt@runner@aborted.html
- fi-pnv-d510: NOTRUN -> [FAIL][28]
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-pnv-d510/igt@runner@aborted.html
- fi-bdw-gvtdvm: NOTRUN -> [FAIL][29]
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-bdw-gvtdvm/igt@runner@aborted.html
- fi-cfl-8109u: NOTRUN -> [FAIL][30]
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-cfl-8109u/igt@runner@aborted.html
- fi-gdg-551: NOTRUN -> [FAIL][31]
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-gdg-551/igt@runner@aborted.html
- fi-bxt-j4205: NOTRUN -> [FAIL][32]
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-bxt-j4205/igt@runner@aborted.html
- fi-cml-u2: NOTRUN -> [FAIL][33]
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-cml-u2/igt@runner@aborted.html
- fi-blb-e6850: NOTRUN -> [FAIL][34]
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-blb-e6850/igt@runner@aborted.html
- fi-bsw-kefka: NOTRUN -> [FAIL][35]
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-bsw-kefka/igt@runner@aborted.html
- fi-cfl-8700k: NOTRUN -> [FAIL][36]
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-cfl-8700k/igt@runner@aborted.html
- fi-bdw-5557u: NOTRUN -> [FAIL][37]
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-bdw-5557u/igt@runner@aborted.html
- fi-elk-e7500: NOTRUN -> [FAIL][38]
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-elk-e7500/igt@runner@aborted.html
Known issues
------------
Here are the changes found in Patchwork_13877 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_selftest@live_hangcheck:
- fi-kbl-7567u: [PASS][39] -> [INCOMPLETE][40] ([fdo#108744])
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-kbl-7567u/igt@i915_selftest@live_hangcheck.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-kbl-7567u/igt@i915_selftest@live_hangcheck.html
- fi-skl-guc: [PASS][41] -> [INCOMPLETE][42] ([fdo#108744])
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-skl-guc/igt@i915_selftest@live_hangcheck.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-skl-guc/igt@i915_selftest@live_hangcheck.html
- fi-cfl-8109u: [PASS][43] -> [INCOMPLETE][44] ([fdo#106070])
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-cfl-8109u/igt@i915_selftest@live_hangcheck.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-cfl-8109u/igt@i915_selftest@live_hangcheck.html
- fi-pnv-d510: [PASS][45] -> [INCOMPLETE][46] ([fdo#110740])
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-pnv-d510/igt@i915_selftest@live_hangcheck.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-pnv-d510/igt@i915_selftest@live_hangcheck.html
- fi-icl-u2: [PASS][47] -> [INCOMPLETE][48] ([fdo#107713] / [fdo#108569])
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-icl-u2/igt@i915_selftest@live_hangcheck.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-icl-u2/igt@i915_selftest@live_hangcheck.html
- fi-elk-e7500: [PASS][49] -> [INCOMPLETE][50] ([fdo#103989])
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-elk-e7500/igt@i915_selftest@live_hangcheck.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-elk-e7500/igt@i915_selftest@live_hangcheck.html
- fi-skl-iommu: [PASS][51] -> [INCOMPLETE][52] ([fdo#108744])
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-skl-iommu/igt@i915_selftest@live_hangcheck.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-skl-iommu/igt@i915_selftest@live_hangcheck.html
- fi-glk-dsi: [PASS][53] -> [INCOMPLETE][54] ([fdo#103359] / [k.org#198133])
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-glk-dsi/igt@i915_selftest@live_hangcheck.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-glk-dsi/igt@i915_selftest@live_hangcheck.html
- fi-skl-gvtdvm: [PASS][55] -> [INCOMPLETE][56] ([fdo#108744])
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-skl-gvtdvm/igt@i915_selftest@live_hangcheck.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-skl-gvtdvm/igt@i915_selftest@live_hangcheck.html
- fi-kbl-x1275: [PASS][57] -> [INCOMPLETE][58] ([fdo#108744])
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-kbl-x1275/igt@i915_selftest@live_hangcheck.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-kbl-x1275/igt@i915_selftest@live_hangcheck.html
- fi-icl-u3: [PASS][59] -> [INCOMPLETE][60] ([fdo#107713] / [fdo#108569])
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-icl-u3/igt@i915_selftest@live_hangcheck.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-icl-u3/igt@i915_selftest@live_hangcheck.html
- fi-cml-u: [PASS][61] -> [INCOMPLETE][62] ([fdo#110566])
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-cml-u/igt@i915_selftest@live_hangcheck.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-cml-u/igt@i915_selftest@live_hangcheck.html
- fi-bxt-j4205: [PASS][63] -> [INCOMPLETE][64] ([fdo#103927])
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-bxt-j4205/igt@i915_selftest@live_hangcheck.html
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-bxt-j4205/igt@i915_selftest@live_hangcheck.html
- fi-kbl-7500u: [PASS][65] -> [INCOMPLETE][66] ([fdo#108744])
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-kbl-7500u/igt@i915_selftest@live_hangcheck.html
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-kbl-7500u/igt@i915_selftest@live_hangcheck.html
- fi-kbl-guc: [PASS][67] -> [INCOMPLETE][68] ([fdo#108744])
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-kbl-guc/igt@i915_selftest@live_hangcheck.html
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-kbl-guc/igt@i915_selftest@live_hangcheck.html
- fi-kbl-8809g: [PASS][69] -> [INCOMPLETE][70] ([fdo#108744])
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-kbl-8809g/igt@i915_selftest@live_hangcheck.html
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-kbl-8809g/igt@i915_selftest@live_hangcheck.html
- fi-bsw-kefka: [PASS][71] -> [INCOMPLETE][72] ([fdo#105876])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-bsw-kefka/igt@i915_selftest@live_hangcheck.html
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-bsw-kefka/igt@i915_selftest@live_hangcheck.html
- fi-gdg-551: [PASS][73] -> [INCOMPLETE][74] ([fdo#108316])
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-gdg-551/igt@i915_selftest@live_hangcheck.html
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-gdg-551/igt@i915_selftest@live_hangcheck.html
- fi-apl-guc: [PASS][75] -> [INCOMPLETE][76] ([fdo#103927])
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-apl-guc/igt@i915_selftest@live_hangcheck.html
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-apl-guc/igt@i915_selftest@live_hangcheck.html
- fi-cml-u2: [PASS][77] -> [INCOMPLETE][78] ([fdo#110566])
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-cml-u2/igt@i915_selftest@live_hangcheck.html
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-cml-u2/igt@i915_selftest@live_hangcheck.html
- fi-skl-6600u: [PASS][79] -> [INCOMPLETE][80] ([fdo#108744])
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-skl-6600u/igt@i915_selftest@live_hangcheck.html
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-skl-6600u/igt@i915_selftest@live_hangcheck.html
- fi-byt-j1900: [PASS][81] -> [INCOMPLETE][82] ([fdo#102657])
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-byt-j1900/igt@i915_selftest@live_hangcheck.html
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-byt-j1900/igt@i915_selftest@live_hangcheck.html
- fi-skl-6770hq: [PASS][83] -> [INCOMPLETE][84] ([fdo#108744])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-skl-6770hq/igt@i915_selftest@live_hangcheck.html
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-skl-6770hq/igt@i915_selftest@live_hangcheck.html
- fi-byt-n2820: [PASS][85] -> [INCOMPLETE][86] ([fdo#102657])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-byt-n2820/igt@i915_selftest@live_hangcheck.html
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-byt-n2820/igt@i915_selftest@live_hangcheck.html
- fi-skl-6700k2: [PASS][87] -> [INCOMPLETE][88] ([fdo#108744])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-skl-6700k2/igt@i915_selftest@live_hangcheck.html
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-skl-6700k2/igt@i915_selftest@live_hangcheck.html
- fi-skl-lmem: [PASS][89] -> [INCOMPLETE][90] ([fdo#108744])
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-skl-lmem/igt@i915_selftest@live_hangcheck.html
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-skl-lmem/igt@i915_selftest@live_hangcheck.html
- fi-skl-6260u: [PASS][91] -> [INCOMPLETE][92] ([fdo#108744])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-skl-6260u/igt@i915_selftest@live_hangcheck.html
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-skl-6260u/igt@i915_selftest@live_hangcheck.html
- fi-snb-2600: [PASS][93] -> [INCOMPLETE][94] ([fdo#105411])
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-snb-2600/igt@i915_selftest@live_hangcheck.html
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-snb-2600/igt@i915_selftest@live_hangcheck.html
* igt@kms_chamelium@common-hpd-after-suspend:
- fi-kbl-7567u: [PASS][95] -> [WARN][96] ([fdo#109380])
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-kbl-7567u/igt@kms_chamelium@common-hpd-after-suspend.html
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-kbl-7567u/igt@kms_chamelium@common-hpd-after-suspend.html
* igt@kms_frontbuffer_tracking@basic:
- fi-icl-u2: [PASS][97] -> [FAIL][98] ([fdo#103167])
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-icl-u2/igt@kms_frontbuffer_tracking@basic.html
* igt@kms_pipe_crc_basic@read-crc-pipe-c:
- fi-kbl-7567u: [PASS][99] -> [SKIP][100] ([fdo#109271]) +23 similar issues
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-kbl-7567u/igt@kms_pipe_crc_basic@read-crc-pipe-c.html
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-kbl-7567u/igt@kms_pipe_crc_basic@read-crc-pipe-c.html
#### Possible fixes ####
* igt@gem_flink_basic@flink-lifetime:
- fi-icl-u3: [DMESG-WARN][101] ([fdo#107724]) -> [PASS][102] +1 similar issue
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-icl-u3/igt@gem_flink_basic@flink-lifetime.html
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-icl-u3/igt@gem_flink_basic@flink-lifetime.html
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-icl-u2: [FAIL][103] ([fdo#109483]) -> [PASS][104]
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-icl-u2/igt@kms_chamelium@hdmi-hpd-fast.html
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-icl-u2/igt@kms_chamelium@hdmi-hpd-fast.html
* igt@prime_vgem@basic-fence-flip:
- fi-kbl-7500u: [SKIP][105] ([fdo#109271]) -> [PASS][106] +23 similar issues
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6633/fi-kbl-7500u/igt@prime_vgem@basic-fence-flip.html
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/fi-kbl-7500u/igt@prime_vgem@basic-fence-flip.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#102657]: https://bugs.freedesktop.org/show_bug.cgi?id=102657
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#103359]: https://bugs.freedesktop.org/show_bug.cgi?id=103359
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#103989]: https://bugs.freedesktop.org/show_bug.cgi?id=103989
[fdo#105411]: https://bugs.freedesktop.org/show_bug.cgi?id=105411
[fdo#105876]: https://bugs.freedesktop.org/show_bug.cgi?id=105876
[fdo#106070]: https://bugs.freedesktop.org/show_bug.cgi?id=106070
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
[fdo#108316]: https://bugs.freedesktop.org/show_bug.cgi?id=108316
[fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569
[fdo#108744]: https://bugs.freedesktop.org/show_bug.cgi?id=108744
[fdo#109100]: https://bugs.freedesktop.org/show_bug.cgi?id=109100
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109380]: https://bugs.freedesktop.org/show_bug.cgi?id=109380
[fdo#109483]: https://bugs.freedesktop.org/show_bug.cgi?id=109483
[fdo#110566]: https://bugs.freedesktop.org/show_bug.cgi?id=110566
[fdo#110740]: https://bugs.freedesktop.org/show_bug.cgi?id=110740
[k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133
Participating hosts (52 -> 46)
------------------------------
Additional (1): fi-kbl-r
Missing (7): fi-kbl-soraka fi-bxt-dsi fi-byt-squawks fi-bsw-cyan fi-icl-y fi-byt-clapper fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_6633 -> Patchwork_13877
CI-20190529: 20190529
CI_DRM_6633: 8009b790d05451f3c92fb5f49d2c0f697e08a2d2 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5121: 242cb6f2149cb9699ba9b316e5f60b756260e829 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_13877: 43ca0ddb4fd81a1ed7606dd0bbae518fc8106def @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
43ca0ddb4fd8 drm/i915: Cancel persistent contexts if !hangcheck
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13877/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] drm/i915: Cancel persistent contexts if !hangcheck
2019-08-05 22:19 [PATCH] drm/i915: Cancel persistent contexts if !hangcheck Chris Wilson
2019-08-05 22:45 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
2019-08-05 23:11 ` ✗ Fi.CI.BAT: failure " Patchwork
@ 2019-08-06 8:35 ` Andi Shyti
2019-08-06 8:40 ` Chris Wilson
2 siblings, 1 reply; 5+ messages in thread
From: Andi Shyti @ 2019-08-06 8:35 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
Hi Chris,
> +static void kill_context(struct i915_gem_context *ctx)
> +{
> + struct i915_gem_engines_iter it;
> + struct intel_engine_cs *engine;
> + intel_engine_mask_t tmp, active;
> + struct intel_context *ce;
> +
> + if (i915_gem_context_is_banned(ctx))
> + return;
just a question, if a context is "banned", don't we want to check
on the requests anyway?
> +++ b/drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c
heartbeat? I like it :)
Reviewed-by: Andi Shyti <andi.shyti@intel.com>
Thanks,
Andi
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] drm/i915: Cancel persistent contexts if !hangcheck
2019-08-06 8:35 ` [PATCH] " Andi Shyti
@ 2019-08-06 8:40 ` Chris Wilson
0 siblings, 0 replies; 5+ messages in thread
From: Chris Wilson @ 2019-08-06 8:40 UTC (permalink / raw)
To: Andi Shyti; +Cc: intel-gfx
Quoting Andi Shyti (2019-08-06 09:35:49)
> Hi Chris,
>
> > +static void kill_context(struct i915_gem_context *ctx)
> > +{
> > + struct i915_gem_engines_iter it;
> > + struct intel_engine_cs *engine;
> > + intel_engine_mask_t tmp, active;
> > + struct intel_context *ce;
> > +
> > + if (i915_gem_context_is_banned(ctx))
> > + return;
>
> just a question, if a context is "banned", don't we want to check
> on the requests anyway?
If the context is already banned, it means the request will be banned on
submission and the previously active request was found guilty and thrown
away.
> > +++ b/drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c
>
> heartbeat? I like it :)
>
> Reviewed-by: Andi Shyti <andi.shyti@intel.com>
Ooops, should have flagged this as a very much RFC. It's still
incomplete (namely evicting active requests needs some backend support).
And I've yet to throw it against the wall to see if it sticks.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-08-06 8:40 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-08-05 22:19 [PATCH] drm/i915: Cancel persistent contexts if !hangcheck Chris Wilson
2019-08-05 22:45 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
2019-08-05 23:11 ` ✗ Fi.CI.BAT: failure " Patchwork
2019-08-06 8:35 ` [PATCH] " Andi Shyti
2019-08-06 8:40 ` Chris Wilson
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.