* [Intel-gfx] [CI] drm/i915/gem: Avoid parking the vma as we unbind @ 2019-12-03 15:50 Chris Wilson 2019-12-03 19:51 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for " Patchwork 0 siblings, 1 reply; 2+ messages in thread From: Chris Wilson @ 2019-12-03 15:50 UTC (permalink / raw) To: intel-gfx In order to avoid keeping a reference on the i915_vma (which is long overdue!) we have to coordinate all the possible lifetimes and only use the vma while we know it is alive. In this episode, we are reminded that while idle, the closed vma are destroyed. So if the GT idles while we are working with the vma, the vma itself becomes invalid. First class i915_vma here we come, but in the meantime keep piling on the straw. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Matthew Auld <matthew.auld@intel.com> --- drivers/gpu/drm/i915/i915_gem.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index bfdc8a9f82f8..466ca275a863 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c @@ -141,18 +141,32 @@ int i915_gem_object_unbind(struct drm_i915_gem_object *obj, struct i915_vma, obj_link))) { struct i915_address_space *vm = vma->vm; + bool awake = false; - ret = -EBUSY; + ret = -EAGAIN; if (!i915_vm_tryopen(vm)) break; + if (intel_gt_pm_get_if_awake(vm->gt)) { + awake = true; + } else { + if (i915_vma_is_closed(vma)) { + spin_unlock(&obj->vma.lock); + goto err_vm; + } + } + list_move_tail(&vma->obj_link, &still_in_list); spin_unlock(&obj->vma.lock); + ret = -EBUSY; if (flags & I915_GEM_OBJECT_UNBIND_ACTIVE || !i915_vma_is_active(vma)) ret = i915_vma_unbind(vma); + if (awake) + intel_gt_pm_put(vm->gt); +err_vm: i915_vm_close(vm); spin_lock(&obj->vma.lock); } -- 2.24.0 _______________________________________________ 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/gem: Avoid parking the vma as we unbind 2019-12-03 15:50 [Intel-gfx] [CI] drm/i915/gem: Avoid parking the vma as we unbind Chris Wilson @ 2019-12-03 19:51 ` Patchwork 0 siblings, 0 replies; 2+ messages in thread From: Patchwork @ 2019-12-03 19:51 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx == Series Details == Series: drm/i915/gem: Avoid parking the vma as we unbind URL : https://patchwork.freedesktop.org/series/70382/ State : failure == Summary == CI Bug Log - changes from CI_DRM_7474 -> Patchwork_15564 ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with Patchwork_15564 absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in Patchwork_15564, 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_15564/index.html Possible new issues ------------------- Here are the unknown changes that may have been introduced in Patchwork_15564: ### IGT changes ### #### Possible regressions #### * igt@i915_selftest@live_blt: - fi-ivb-3770: [PASS][1] -> [DMESG-FAIL][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7474/fi-ivb-3770/igt@i915_selftest@live_blt.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15564/fi-ivb-3770/igt@i915_selftest@live_blt.html Known issues ------------ Here are the changes found in Patchwork_15564 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@i915_pm_rpm@module-reload: - fi-skl-6770hq: [PASS][3] -> [DMESG-FAIL][4] ([i915#178]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7474/fi-skl-6770hq/igt@i915_pm_rpm@module-reload.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15564/fi-skl-6770hq/igt@i915_pm_rpm@module-reload.html * igt@i915_selftest@live_gem_contexts: - fi-hsw-4770r: [PASS][5] -> [DMESG-FAIL][6] ([fdo#111692]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7474/fi-hsw-4770r/igt@i915_selftest@live_gem_contexts.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15564/fi-hsw-4770r/igt@i915_selftest@live_gem_contexts.html * igt@kms_chamelium@hdmi-crc-fast: - fi-icl-u2: [PASS][7] -> [FAIL][8] ([fdo#109635]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7474/fi-icl-u2/igt@kms_chamelium@hdmi-crc-fast.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15564/fi-icl-u2/igt@kms_chamelium@hdmi-crc-fast.html * igt@kms_chamelium@hdmi-hpd-fast: - fi-kbl-7500u: [PASS][9] -> [FAIL][10] ([fdo#111096] / [i915#323]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7474/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15564/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html #### Possible fixes #### * igt@i915_selftest@live_blt: - fi-hsw-4770: [DMESG-FAIL][11] ([i915#683]) -> [PASS][12] [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7474/fi-hsw-4770/igt@i915_selftest@live_blt.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15564/fi-hsw-4770/igt@i915_selftest@live_blt.html * igt@i915_selftest@live_gem_contexts: - fi-hsw-peppy: [DMESG-FAIL][13] ([fdo#111692]) -> [PASS][14] [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7474/fi-hsw-peppy/igt@i915_selftest@live_gem_contexts.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15564/fi-hsw-peppy/igt@i915_selftest@live_gem_contexts.html * igt@i915_selftest@live_gt_heartbeat: - fi-icl-u2: [DMESG-FAIL][15] ([fdo#112406]) -> [PASS][16] [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7474/fi-icl-u2/igt@i915_selftest@live_gt_heartbeat.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15564/fi-icl-u2/igt@i915_selftest@live_gt_heartbeat.html #### Warnings #### * igt@kms_busy@basic-flip-pipe-b: - fi-kbl-x1275: [DMESG-WARN][17] ([i915#62] / [i915#92] / [i915#95]) -> [DMESG-WARN][18] ([i915#62] / [i915#92]) +8 similar issues [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7474/fi-kbl-x1275/igt@kms_busy@basic-flip-pipe-b.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15564/fi-kbl-x1275/igt@kms_busy@basic-flip-pipe-b.html * igt@kms_flip@basic-flip-vs-modeset: - fi-kbl-x1275: [DMESG-WARN][19] ([i915#62] / [i915#92]) -> [DMESG-WARN][20] ([i915#62] / [i915#92] / [i915#95]) +3 similar issues [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7474/fi-kbl-x1275/igt@kms_flip@basic-flip-vs-modeset.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15564/fi-kbl-x1275/igt@kms_flip@basic-flip-vs-modeset.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109635]: https://bugs.freedesktop.org/show_bug.cgi?id=109635 [fdo#111096]: https://bugs.freedesktop.org/show_bug.cgi?id=111096 [fdo#111692]: https://bugs.freedesktop.org/show_bug.cgi?id=111692 [fdo#111998]: https://bugs.freedesktop.org/show_bug.cgi?id=111998 [fdo#112406]: https://bugs.freedesktop.org/show_bug.cgi?id=112406 [i915#178]: https://gitlab.freedesktop.org/drm/intel/issues/178 [i915#323]: https://gitlab.freedesktop.org/drm/intel/issues/323 [i915#472]: https://gitlab.freedesktop.org/drm/intel/issues/472 [i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62 [i915#683]: https://gitlab.freedesktop.org/drm/intel/issues/683 [i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92 [i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95 Participating hosts (52 -> 45) ------------------------------ Missing (7): fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-bdw-samus fi-byt-clapper fi-skl-6600u Build changes ------------- * CI: CI-20190529 -> None * Linux: CI_DRM_7474 -> Patchwork_15564 CI-20190529: 20190529 CI_DRM_7474: 24f0a460abda27c1ce7e8fa717e3198812b7f9ec @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5323: b0f877d06a78b9c38ed246be2537a0453b6c214f @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_15564: 54d9b5cc3701d84931c066a504a3da3f643a912b @ git://anongit.freedesktop.org/gfx-ci/linux == Linux commits == 54d9b5cc3701 drm/i915/gem: Avoid parking the vma as we unbind == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15564/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-03 19:51 UTC | newest] Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2019-12-03 15:50 [Intel-gfx] [CI] drm/i915/gem: Avoid parking the vma as we unbind Chris Wilson 2019-12-03 19:51 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for " 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.