[Intel-gfx] [PATCH 7/7] drm/i915/gem: Acquire all vma/objects under reservation_ww_class
Christian König
christian.koenig at amd.com
Thu Jun 25 15:47:09 UTC 2020
Am 25.06.20 um 17:10 schrieb Chris Wilson:
> We have the DAG of fences, we can use that information to avoid adding
> an implicit coupling between execution contexts.
No, we can't. And it sounds like you still have not understood the
underlying problem.
See this has nothing to do with the fences itself or their DAG.
When you depend on userspace to do another submission so your fence can
start processing you end up depending on whatever userspace does.
This in turn means when userspace calls a system call (or does page
fault) it is possible that this ends up in the reclaim code path.
And while we want to avoid it both Daniel and I already discussed this
multiple times and we agree it is still a must have to be able to do
fence waits in the reclaim code path.
So what happens is that you have a dependency between fence submission
-> userspace -> reclaim path -> fence submission. And that is a circle
dependency, no matter what your DAG looks like.
In other words this whole approach does not work, is a clear NAK and I
can only advise Dave to *not* merge it.
Regards,
Christian.
More information about the Intel-gfx
mailing list