livelock between i915_vma_parked & i915_gem_free_objects
Due the complex requirements resulting from lack of proper i915_vma.ref management, we have to walk the same list in both tasks, fighting over the spinlock and restarting the list iteration after each lock reacquisition.
What must run in microseconds takes 100+ seconds.
Best example are gem_exec_whisper/fds
Note it may show up as unexplainable jitter with 100% kworker utilisation, possibly seen already by @airlied
Edited by Chris Wilson