drm/i915/gtt: Allocate va range only if vma is not bound
authorMika Kuoppala <mika.kuoppala@linux.intel.com>
Tue, 28 Apr 2015 14:56:17 +0000 (17:56 +0300)
committerJani Nikula <jani.nikula@intel.com>
Thu, 30 Apr 2015 10:31:24 +0000 (13:31 +0300)
commit75d04a3773ecee617847de963ae4195d6aa74c28
tree0461f2fe4b0bd57cd60175633be7ef4026db0488
parent245054a1fe33c06ad233e0d58a27ec7b64db9284
drm/i915/gtt: Allocate va range only if vma is not bound

When we have bound vma into an address space, the layout
of page table structures is immutable. So we can be absolutely
certain that if vma is already bound, there is no need to
(re)allocate a virtual address range for it.

v2: - add sanity checks and remove superfluous GLOBAL_BIND set
    - we might do update for an unbound vma (Chris)

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=90224
Testcase: igt/gem_exec_big #bdw
Reported-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michel Thierry <michel.thierry@intel.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/i915_gem_gtt.c