Summary: | [all Bisected]igt/gem_persistent_relocs and igt/gem_reloc_vs_gpu some subcases timeout | ||||||
---|---|---|---|---|---|---|---|
Product: | DRI | Reporter: | Guo Jinxian <jinxianx.guo> | ||||
Component: | DRM/Intel | Assignee: | Intel GFX Bugs mailing list <intel-gfx-bugs> | ||||
Status: | CLOSED FIXED | QA Contact: | Intel GFX Bugs mailing list <intel-gfx-bugs> | ||||
Severity: | normal | ||||||
Priority: | high | CC: | intel-gfx-bugs | ||||
Version: | unspecified | ||||||
Hardware: | Other | ||||||
OS: | All | ||||||
Whiteboard: | |||||||
i915 platform: | i915 features: | ||||||
Attachments: |
|
Description
Guo Jinxian
2014-09-09 03:39:21 UTC
It impacts all platforms. Object disappears during unbind. The only question is how that only just affected you. I still have no idea how this is the first time it showed up, but commit ab4a7b96c7c9980f306730eee7667639d6221ef2 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Tue Sep 9 11:16:08 2014 +0100 drm/i915: Objects on the unbound list may still have an active reference Due to the lazy retirement semantics, even though we have unbound an object, it may still hold onto an active reference. So in the debug code, play safe. v2: Export i915_gem_shrink() rather than opencoding it. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> should be the last fix we ever need for drop_caches (tm)! And I think commit ace110dfad1b9ac2c724e1c1251c0faa8a408fa1 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Tue Sep 9 07:02:43 2014 +0100 drm/i915: Drop any active reference before unbinding Before we process the final unbind on an object and move it to the unbound list, it is semantically cleaner if there are no more active references to the object. (An active reference would imply that it was still being accessed by the GPU after it became inaccessible.) The caveat is that all callsites must be prepared for the object to disappeared during the unbind - i.e. they must hold their own reference. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> is the root cause. Verified. root@x-bdw05:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests#./gem_persistent_relocs --run-subtest forked-interruptible-faulting-reloc-thrash-inactive IGT-Version: 1.8-g107151c (x86_64) (Linux: 3.17.0-rc4_drm-intel-nightly_99f444_20140910+ x86_64) Subtest forked-interruptible-faulting-reloc-thrash-inactive: SUCCESS (4.306s) root@x-bdw05:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# ./gem_reloc_vs_gpu --run-subtest forked-faulting-reloc-thrash-inactive IGT-Version: 1.8-g107151c (x86_64) (Linux: 3.17.0-rc4_drm-intel-nightly_99f444_20140910+ x86_64) Subtest forked-faulting-reloc-thrash-inactive: SUCCESS (4.387s) Closing old verified+fixed. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.