drm/i915: Remove leftover vma->obj->pages_pin_count on insert/remove
authorChris Wilson <chris@chris-wilson.co.uk>
Tue, 15 Oct 2019 10:01:55 +0000 (11:01 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 15 Oct 2019 10:46:52 +0000 (11:46 +0100)
commit454a325a9768aa9202843f2a4aea7bef94495d94
treebc4661dee9c8c110e74a3b057d0a06964f5351d2
parent56184a20a80037c39fccc78b683cf593a2db4c5f
drm/i915: Remove leftover vma->obj->pages_pin_count on insert/remove

We now do the page pin count upfront in vma_get_pages/vma_put_pages, so
that we do the allocations before we enter the vm->mutex. Our vma
page references we are tracked in vma->pages_count and the extra
obj->pages_pin_count being performed later in i915_vma_insert and
i915_vma_remove is redundant, and worse throws off the shrinker's logic
on when it can free an object by unbinding it.

Reported-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Reported-by: Matthew Auld <matthew.auld@intel.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Matthew Auld <matthew.auld@intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191015100155.10376-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/i915_vma.c