Quoting Chris Wilson (2019-11-21 09:10:40) > From inside an active timeline in the execbuf ioctl, we may try to > reclaim some space in the GGTT. We need GGTT space for all objects on > !full-ppgtt platforms, and for context images everywhere. However, to > free up space in the GGTT we may need to remove some pinned objects > (e.g. context images) that require flushing the idle barriers to remove. > For this we use the big hammer of intel_gt_wait_for_idle() > > However, commit 7936a22dd466 ("drm/i915/gt: Wait for new requests in > intel_gt_retire_requests()") will continue spinning on the wait if a > timeline is active but lacks requests, as is the case during execbuf > reservation. Spinning forever is quite time consuming, so revert that > commit and start again. > > In practice, the effect commit 7936a22dd466 was trying to achieve is > accomplished by commit 1683d24c1470 ("drm/i915/gt: Move new timelines > to the end of active_list"), so there is no immediate rush to replace > the looping. > > Testcase: igt/gem_exec_reloc/basic-range > Fixes: 7936a22dd466 ("drm/i915/gt: Wait for new requests in > intel_gt_retire_requests()") > References: 1683d24c1470 ("drm/i915/gt: Move new timelines to the end of > active_list") > Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> > Cc: Tvrtko Ursulin <tvrtko.ursu...@intel.com> > Cc: Joonas Lahtinen <joonas.lahti...@linux.intel.com>
Reviewed-by: Joonas Lahtinen <joonas.lahti...@linux.intel.com> Regards, Joonas _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx