From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jesse Barnes Subject: Re: [PATCH 04/11] drm/i915: Propagate error from unbinding an unfenceable object. Date: Thu, 27 May 2010 09:05:04 -0700 Message-ID: <20100527090504.0afbb5a1@virtuousgeek.org> References: <1274962702-6530-1-git-send-email-chris@chris-wilson.co.uk> <1274962702-6530-5-git-send-email-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from outbound-mail-158.bluehost.com (cpoproxy2-pub.bluehost.com [67.222.39.38]) by gabe.freedesktop.org (Postfix) with SMTP id 4DEF89E8F9 for ; Thu, 27 May 2010 09:05:27 -0700 (PDT) In-Reply-To: <1274962702-6530-5-git-send-email-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org To: Chris Wilson Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org On Thu, 27 May 2010 13:18:15 +0100 Chris Wilson wrote: > Signed-off-by: Chris Wilson > Cc: Jesse Barnes > --- > drivers/gpu/drm/i915/i915_gem.c | 10 +++++++--- > 1 files changed, 7 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c > index 1c65f0b..6425c2a 100644 > --- a/drivers/gpu/drm/i915/i915_gem.c > +++ b/drivers/gpu/drm/i915/i915_gem.c > @@ -3307,9 +3307,13 @@ i915_gem_object_pin_and_relocate(struct drm_gem_object *obj, > obj_priv->tiling_mode != I915_TILING_NONE; > > /* Check fence reg constraints and rebind if necessary */ > - if (need_fence && !i915_gem_object_fence_offset_ok(obj, > - obj_priv->tiling_mode)) > - i915_gem_object_unbind(obj); > + if (need_fence && > + !i915_gem_object_fence_offset_ok(obj, > + obj_priv->tiling_mode)) { > + ret = i915_gem_object_unbind(obj); > + if (ret) > + return ret; > + } > > /* Choose the GTT offset for our buffer and put it there. */ > ret = i915_gem_object_pin(obj, (uint32_t) entry->alignment); Looks ok to me. Out of curiosity, are you seeing errors here on unbind with some loads? Reviewed-by: Jesse Barnes -- Jesse Barnes, Intel Open Source Technology Center