drm/i915: Unpin the hws if we fail to kmap.
authorChris Wilson <chris@chris-wilson.co.uk>
Wed, 11 Feb 2009 14:26:34 +0000 (14:26 +0000)
committerDave Airlie <airlied@redhat.com>
Fri, 20 Feb 2009 02:21:11 +0000 (12:21 +1000)
A missing unpin on the error path.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Dave Airlie <airlied@linux.ie>
drivers/gpu/drm/i915/i915_gem.c

index e5fc664337f3b21a320201d4514632c8bc10f3ea..fd4b4e268a228d00e06974a41115a2cd20a2e42d 100644 (file)
@@ -3106,6 +3106,7 @@ i915_gem_init_hws(struct drm_device *dev)
        if (dev_priv->hw_status_page == NULL) {
                DRM_ERROR("Failed to map status page.\n");
                memset(&dev_priv->hws_map, 0, sizeof(dev_priv->hws_map));
+               i915_gem_object_unpin(obj);
                drm_gem_object_unreference(obj);
                return -EINVAL;
        }