From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-f66.google.com ([74.125.82.66]:36351 "EHLO mail-wm0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1169105AbcKAN2Y (ORCPT ); Tue, 1 Nov 2016 09:28:24 -0400 Received: by mail-wm0-f66.google.com with SMTP id c17so22715196wmc.3 for ; Tue, 01 Nov 2016 06:28:23 -0700 (PDT) From: Tvrtko Ursulin To: Intel-gfx@lists.freedesktop.org Cc: Tvrtko Ursulin , Chris Wilson , Joonas Lahtinen , Mika Kuoppala , stable@vger.kernel.org Subject: [PATCH] drm/i915: Allow shrinking of userptr objects once again Date: Tue, 1 Nov 2016 13:28:06 +0000 Message-Id: <1478006886-4489-1-git-send-email-tvrtko.ursulin@linux.intel.com> Sender: stable-owner@vger.kernel.org List-ID: From: Tvrtko Ursulin Commit 1bec9b0bda3d ("drm/i915/shrinker: Only shmemfs objects are backed by swap") stopped considering the userptr objects in shrinker callbacks. Restore that so idle userptr objects can be discarded in order to free up memory. One change further to what was introduced in 1bec9b0bda3d is to start considering userptr objects in oom but that should also be a correct thing to do. Signed-off-by: Tvrtko Ursulin Fixes: 1bec9b0bda3d ("drm/i915/shrinker: Only shmemfs objects are backed by swap") Cc: Chris Wilson Cc: Joonas Lahtinen Cc: Mika Kuoppala Cc: --- drivers/gpu/drm/i915/i915_gem_shrinker.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_gem_shrinker.c b/drivers/gpu/drm/i915/i915_gem_shrinker.c index 0993afc0e725..dfca1f6b3630 100644 --- a/drivers/gpu/drm/i915/i915_gem_shrinker.c +++ b/drivers/gpu/drm/i915/i915_gem_shrinker.c @@ -83,8 +83,8 @@ static bool can_release_pages(struct drm_i915_gem_object *obj) if (!obj->mm.pages) return false; - /* Only shmemfs objects are backed by swap */ - if (!obj->base.filp) + /* shmemfs and userptr objects are backed by swap */ + if (!obj->base.filp && !obj->userptr.mm) return false; /* Only report true if by unbinding the object and putting its pages -- 2.7.4