[Intel-gfx] [PATCH] drm/i915: Idle the GPU before shinking everything

Chris Wilson chris at chris-wilson.co.uk
Wed Nov 8 09:38:06 UTC 2017


Quoting Chris Wilson (2017-11-07 21:31:20)
> The handling of contexts are peculiar. Instead of tieing their vma to
> activity, we pin the context. This means that we cannot simply unbind
> the context object itself at will (which would normally cause us to wait
> for the vma to be idle), but must manually idle the GPU and retire
> requests first.
> 
> A consequence of this peculiarity is when doing a last desperate attempt
> to recover memory. If the memory is tied up inside active context
> objects, we will fail to recover any memory simply by trying to unbind
> the objects without first doing a wait-for-idle.

However, we are totally not allowed to use ordinary allocs here, making
sending a request next to impossible. We'll just have to wait for idle
and nothing more. Alternatively we have a specially crafted request just
for the shrinker... Ugh.
-Chris


More information about the Intel-gfx mailing list