• Chris Wilson's avatar
    drm/i915: Do not drop pagetables when empty · 92220696
    Chris Wilson authored
    This is the minimal backport for stable of the upstream commit:
    
    commit dd19674b
    Author: Chris Wilson <chris@chris-wilson.co.uk>
    Date:   Wed Feb 15 08:43:46 2017 +0000
    
        drm/i915: Remove bitmap tracking for used-ptes
    
    Due to a race with the shrinker, when we try to allocate a pagetable, we
    may end up shrinking it instead. This comes as a nasty surprise as we
    try to dereference it to fill in the pagetable entries for the object.
    
    In linus/master this is fixed by pinning the pagetables prior to
    allocation, but that backport is roughly
     drivers/gpu/drm/i915/i915_gem_gtt.c |   10 ----------
     1 file changed, 10 deletions(-)
    i.e. unsuitable for stable. Instead we neuter the code that tried to
    free the pagetables.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99295
    Fixes: 2ce5179f ("drm/i915/gtt: Free unused lower-level page tables")
    Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
    Cc: Michel Thierry <michel.thierry@intel.com>
    Cc: Mika Kuoppala <mika.kuoppala@intel.com>
    Cc: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
    Cc: Michał Winiarski <michal.winiarski@intel.com>
    Cc: Daniel Vetter <daniel.vetter@intel.com>
    Cc: Jani Nikula <jani.nikula@linux.intel.com>
    Cc: intel-gfx@lists.freedesktop.org
    Cc: <stable@vger.kernel.org> # v4.10+
    Tested-by: default avatarMaël Lavault <mael.lavault@protonmail.com>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    92220696
i915_gem_gtt.c 99.7 KB