drm/i915: Ensure that if we ever try to pin+fence it is mappable.
When merging Daniel's full-gtt patches I had a set of tweaks which I thought I had undone. I was half right... Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=31286 Reported-by: jinjin.wang@intel.com Reported-by: Alexey Fisher <bug-track@fisher-privat.net> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
parent
27153f72d0
commit
085ce26437
2 changed files with 3 additions and 1 deletions
|
@ -4151,6 +4151,7 @@ i915_gem_object_pin(struct drm_gem_object *obj, uint32_t alignment,
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
BUG_ON(obj_priv->pin_count == DRM_I915_GEM_OBJECT_MAX_PIN_COUNT);
|
BUG_ON(obj_priv->pin_count == DRM_I915_GEM_OBJECT_MAX_PIN_COUNT);
|
||||||
|
BUG_ON(need_fence && !mappable);
|
||||||
WARN_ON(i915_verify_lists(dev));
|
WARN_ON(i915_verify_lists(dev));
|
||||||
|
|
||||||
if (obj_priv->gtt_space != NULL) {
|
if (obj_priv->gtt_space != NULL) {
|
||||||
|
|
|
@ -1462,7 +1462,8 @@ intel_pin_and_fence_fb_obj(struct drm_device *dev,
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = i915_gem_object_pin(obj, alignment,
|
ret = i915_gem_object_pin(obj, alignment,
|
||||||
!pipelined, obj_priv->tiling_mode);
|
!pipelined || obj_priv->tiling_mode,
|
||||||
|
obj_priv->tiling_mode);
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue