[Intel-gfx] [PATCH 24/42] drm/i915: Treat a framebuffer reference as an active reference whilst shrinking
John Harrison
John.C.Harrison at Intel.com
Tue Oct 11 09:54:00 UTC 2016
On 07/10/2016 10:46, Chris Wilson wrote:
> Treat a framebuffer reference with the same priority as an active
> reference whilst shrinking. Framebuffers are likely to be reused and
> typically cost more to migrate to and from GPU memory (on LLC
> architectures we need to clflush), so defer the temptation to purge them
> during a kswapd run until we have run out of cheap buffers.
>
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> ---
> drivers/gpu/drm/i915/i915_gem_shrinker.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem_shrinker.c b/drivers/gpu/drm/i915/i915_gem_shrinker.c
> index fa72473dc7f5..0241658af16b 100644
> --- a/drivers/gpu/drm/i915/i915_gem_shrinker.c
> +++ b/drivers/gpu/drm/i915/i915_gem_shrinker.c
> @@ -214,8 +214,9 @@ i915_gem_shrink(struct drm_i915_private *dev_priv,
> !is_vmalloc_addr(obj->mm.mapping))
> continue;
>
> - if ((flags & I915_SHRINK_ACTIVE) == 0 &&
> - i915_gem_object_is_active(obj))
> + if (!(flags & I915_SHRINK_ACTIVE) &&
> + (i915_gem_object_is_active(obj) ||
> + obj->framebuffer_references))
> continue;
>
> if (!can_release_pages(obj))
Reviewed-by: John Harrison <john.c.harrison at intel.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-gfx/attachments/20161011/3b2ceb6d/attachment.html>
More information about the Intel-gfx
mailing list